在窗体从隐藏状态重新激活时不能设置焦点
wince程序有两个界面,界面A可以点击按钮打开界面B同时隐藏界面A,界面B同样可以点击按钮打开界面A同时隐藏界面B,现在问题出现了,我在界面A的Activated事件里面使用了textbox.Focus()去设置焦点,第一次实例化界面时是可以设置焦点的,第二次从隐藏状态激活界面时,虽然执行Activated事件里面textbox.Focus(),但是界面上并没有获取到焦点(第二次打开界面并没有实例化界面了,只是从隐藏状态重新show()出来)。在winform里面我试过这种方式是可以设置焦点的,不知道为什么在wince程序里面为什么执行了也不能设置焦点。求高人指点!!!
[解决办法]
设置焦点需要注意窗体是在SHOW的状态下,同样要可以访问的状态下,设置焦点才有效。
[解决办法]
可以考虑窗体显示出来,延时 100ms 再做焦点设置
[解决办法]
窗体上 Init 和 Show 的消息,在其中进行处理,设置一下 Timer,在此 Timer 中进行 SetFocus 操作
[解决办法]
响应 WM_ACTIVATED 事件,也行,问题解决了就好!