|
本帖最后由 mdyblog 于 2017-9-2 14:05 编辑
由于你 拦截了 中间消息,此时PECMD流程还没完成。所以变量还没更新。
可以 POSTMSG转下,让PECMD走完再处理。
ENVI^ ForceLocal=1
SET ::EN_CHANGE=0x0300
SET &::EN_CHANGE=0x0300
SET &::EN_UPDATE=0x400
SET ::WM_COMMAND=0x0111
CALL a
_SUB a,W634H94,
EDIT -3D b,L23T21W580H22,,,0x100
ENVI @b.ID=?;b_ID
//ENVI @this.MSG=_COMMAND#%b_ID%#%&EN_CHANGE%::&wp,&lp, MESS 值已改变
//ENVI @this.MSG=_COMMAND#%b_ID%#%EN_UPDATE%::&wp,&lp, @TEAM CALC I=%I%+1| ENVI @this=%I%值已改变%b% %wp% %lp% %b_ID%
ENVI @this.MSG=_COMMAND#%b_ID%#%EN_UPDATE%::&wp,&lp, ENVI @this.POSTMSG=#1,%wp%,%lp%
ENVI @this.MSG=#1::wp,lp,@TEAM CALC I=%I%+1| ENVI @this=%I%值已改变%b% %wp% %lp% %b_ID%
_END
|
|