下面的代码从 PECMD 的示例文件“按下不起的按钮.WCS”修改而来,现在遇到的问题是:当按下其中一个按钮之后,再按其他按钮,要按两次才会生效。
如何才能做到按一次就生效呢?
TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1 ENVI &::BM_SETSTATE=0x00F3 //设定 ENVI &::BST_UNCHECKED=0x0000 //按钮弹起状态。 ENVI &::BST_CHECKED=0x0001 //按钮凹下去效果。 WIN1 _SUB WIN1,W300H210,按钮互锁(按下不起), ITEM ITEM1,L90T30W100H30,按钮 1, OnBt1 1 0 0 1 ITEM ITEM2,L45T105W100H30,按钮 2, OnBt1 0 1 0 2 ITEM ITEM3,L158T105W100H30,按钮 3, OnBt1 0 0 1 3 _END _SUB OnBt1 ENVI &&I=3 LOOP #%&I%>=1, TEAM ENVI @ITEM%&I%.SENDMSG=%&BM_SETSTATE%;%&BST_UNCHECKED%,| CALC &&I=%&I% - 1 ENVI @ITEM%4.SENDMSG=%&BM_SETSTATE%;%&BST_CHECKED%, _END
循环的时候把自己也解锁了?
caocaofff 循环的时候把自己也解锁了?
后面又锁上了,可以添加判断不解锁自己,视觉上效果一样。
让我懵圈的是切换按钮点击的时候要点击两次,似乎是第一次点击仅仅获取了焦点。