VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 2314|回复: 6

[求助] 关于VS2010和VS2012中窗口焦点的问题

[复制链接]
57_avatar_middle
在线会员 发表于 2015-11-28 00:10:39 | 显示全部楼层 |阅读模式
3驿站币
公司里用的是VS2010,在窗口中出现这样一个问题:比如有两个BTN按钮,TAB键顺序是BTN1、BTN2、BTN3,用TAB键可以切换按钮的焦点,
当焦点在BTN3上的时候,切换窗口,如果点击桌面,然后再切换到窗口,发现焦点回到了BTN1.不过一般的窗口的焦点不都是在切换窗口前的
最后一个控件上吗。
回家我用VS2012试了下,发现不存在这样的问题,就算切换了窗口焦点也在BTN3上。
所以想问下2010和2012是不是设置不同。2010想解决这个问题应该怎么办。

最佳答案

查看完整内容

解决办法的话,可以自己手动设置,实时的记录下当前哪个控件获得焦点,之后捕获当前窗口是否是最前端窗口,如果不是的话就说明被切换了,再切换回来的话就设置下,或者你自己启动一个定时器,实时的设置当前焦点所在的控件,也应该可以解决




上一篇:VC2010版调试问题
下一篇:Vc编程创建两个线程,实现两个线程之间的SOCKET通信
51_avatar_middle
online_admins 发表于 2015-11-28 00:10:40 | 显示全部楼层
Muzis 发表于 2015-11-30 22:51
有什么好的办法解决吗?

PS,我很喜欢你的视频课啊!

解决办法的话,可以自己手动设置,实时的记录下当前哪个控件获得焦点,之后捕获当前窗口是否是最前端窗口,如果不是的话就说明被切换了,再切换回来的话就设置下,或者你自己启动一个定时器,实时的设置当前焦点所在的控件,也应该可以解决
57_avatar_middle
ico_lz  楼主| 发表于 2015-11-28 00:11:24 | 显示全部楼层
第一句话写错了,比如是3个按钮,不是两个。
51_avatar_middle
online_admins 发表于 2015-11-30 09:32:36 | 显示全部楼层
说实话,没太明白楼主的意思?
“当焦点在BTN3上的时候,切换窗口,如果点击桌面,然后再切换到窗口”?没懂
57_avatar_middle
ico_lz  楼主| 发表于 2015-11-30 22:32:00 | 显示全部楼层
Syc 发表于 2015-11-30 09:32
说实话,没太明白楼主的意思?
“当焦点在BTN3上的时候,切换窗口,如果点击桌面,然后再切换到窗口”?没 ...

可能表达得不是很清楚。
就比如现在我放了三个Button控件,分别是BTN1、BTN2、BTN3,TAB顺序也依次拍好。然后选中BTN3,现在焦点在BTN3上,然后切换到别的窗口,再切换回来。正常情况下焦点应该还在BTN3上,VS2012上发现是正常的,但是公司的是VS2010,切换回来发现焦点在BTN1上(也就是TAB顺序为1的控件)。不知道是不是公司的设置有问题,还是VS2010有问题。
51_avatar_middle
online_admins 发表于 2015-11-30 22:47:12 | 显示全部楼层
Muzis 发表于 2015-11-30 22:32
可能表达得不是很清楚。
就比如现在我放了三个Button控件,分别是BTN1、BTN2、BTN3,TAB顺序也依次拍好 ...

刚测试了下,vs2010确实有这个问题,可能是Bug吧。。。
57_avatar_middle
ico_lz  楼主| 发表于 2015-11-30 22:51:21 | 显示全部楼层
Syc 发表于 2015-11-30 22:47
刚测试了下,vs2010确实有这个问题,可能是Bug吧。。。

有什么好的办法解决吗?

PS,我很喜欢你的视频课啊!
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-27 16:31

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表