PowerApps项目中矩形循环着色功能异常问题求助
PowerApps循环着色矩形问题修复方案
问题分析
当前代码的核心问题是indexRectangle直接递增至订单数量,未处理循环逻辑;矩形的填充判断仅匹配固定的indexRectangle值,导致超过8后无法对应到循环的矩形索引。
代码修改
1. 按钮点击事件(OnSelect)
替换原有代码,改用CompletedCount跟踪已完成的生产数量:
// 读取订单数量(若已在前一屏幕存储,可省略此句) Set(OrderNumber, Value(orderNumbertxt.Text)); // 仅当未达到订单数量时,累加完成数 If(CompletedCount < OrderNumber, Set(CompletedCount, CompletedCount + 1) );
需先在屏幕的
OnVisible事件中初始化变量:Set(CompletedCount, 0);
2. 矩形填充属性(Fill)
对每个矩形(编号1-8),修改填充判断逻辑,通过取模计算循环后的当前目标矩形:
- 第1个矩形:
If( ((CompletedCount - 1) Mod 8) + 1 = 1, Color.Blue, Color.White )
- 第2个矩形:
If( ((CompletedCount - 1) Mod 8) + 1 = 2, Color.Blue, Color.White )
- ...以此类推,第8个矩形将判断条件改为
=8
逻辑说明
((CompletedCount - 1) Mod 8) + 1:将完成数转换为1-8的循环索引,例如:- 第9次点击(CompletedCount=9)→
((9-1)Mod8)+1=1,对应第1个矩形 - 第10次点击(CompletedCount=10)→
((10-1)Mod8)+1=2,对应第2个矩形
- 第9次点击(CompletedCount=9)→
- 每次点击仅着色当前循环到的矩形,完全匹配“逐步循环着色”的需求。
内容的提问来源于stack exchange,提问作者lenkZel
相关产品推荐
相关产品推荐

