如何获得文本框焦点的通知?

时间:2012-01-18 07:24:32

标签: c++ windows keyboard touch

使用Windows 7触摸设备当您选中/聚焦文本框或输入字段(记事本等)时,Windows会显示这个小的触摸键盘指示器(用Tab键显示这将触发屏幕键盘)。

我想编写一个应用程序,在发生这种情况时会收到通知,文本框(等等)会得到关注(无论哪个应用程序)。

如果应用程序知道关注其他应用程序,我是否需要勾选某些内容?

有没有办法在c ++中这样做?

1 个答案:

答案 0 :(得分:2)

我相信SetWinEventHook功能,特别是EVENT_OBJECT_FOCUS事件正是您所寻找的。

来自MSDN说明:

  

对象已收到键盘焦点。系统为以下用户界面元素发送此事件:列表视图控件,菜单栏,弹出菜单,切换窗口,选项卡控件,树视图控件和窗口对象。服务器应用程序为其可访问对象发送此事件。

     

WinEventProc回调函数的hwnd参数标识接收键盘焦点的窗口。