目前位置: VCer资源中心 >>> VCer论坛 >>> 技术问答

[本帖已阅读1799次 分值2 回复1次] 张贴资源 发回信箱 控制面板

如何强制获得焦点?

提供者:ronnysjtu 张贴时间:2004-08-03 13:41:54.0 出处:vcer.net 作者:不祥

如何强制获得焦点?(2004-08-03 13:41:54.0)


Ronny


 
级别: VCer小兵
头衔: VCer会员

经验: 11
作品: 1
分会: 华东分会
注册: 2004-08-03 13:34:07.0
登录: 2004-08-03 13:34:24.0

在我的程序中,运行到一段时间,弹出来一个用dialogbox()生成的Topmost的密码框,然后输入密码和确认,可是问题是到这个时候如果程序是在后台运行,弹出来的topmost的框虽然是在前面,可是没有聚焦,无法输入。我尝试在dialogbox的callback函数里边的WM_INITDIALOG消息的时候用SetWindowPos和SetActiveWindow都不行,不知道有什么解决办法。同样的,一个通过GetSaveFileName(ofn)生成的对话框也会失去焦点,在他的Callback函数里也想这样做。

另外,这个密码输入框是CEdit的,但是我试了一下,输入的时候只能输入字母和符号,但是如果从别的地方复制一串中文过来的话,是可以粘贴的,不知道要怎么样才能够让中文粘贴失效(英文和字母仍然有效),就像Acrobat里边那样。据说要用SubClass,可我找不到例程。

注:转载文章需注明来源:VCer.net 文章地址:http://vcer.net/2895.html

  如果你觉得VCer.net不错,而且你愿意为VCer.net捐赠一元钱,那么点击后面的捐赠按钮吧:) vcer.net捐赠

[回复该贴] [加入个人书签]

re:如何强制获得焦点?
SetFocus?

bluejoe 于 2004-08-06 10:28:27.0 编辑 [回复该贴]