输入焦点
来源:互联网 发布:淘宝有吕官方旗舰店 编辑:程序博客网 时间:2024/04/28 01:12
Windows是一个以消息为导向的系统,应用程序只能被动地等待用户按键的消息,不能主动地去读键盘的状态,也就是说,每当键盘上有个键被按下,系统就会发出一个按键消息给窗口,告诉它某个键被按下去了,只要鼠标移动一下,系统也会发出相应的消息,并把鼠标的坐标信息传给窗口。 Windows可以同时执行许多程序,但键盘只有一个,怎么判断由哪个窗口接收键盘及鼠标的消息呢?采用“输入焦点”(inpuut focus)技术可以解决这个问题。只要某个窗口取得输入焦点,它不但会被提升到屏幕的最前面,颜色也会有所不同,所有的键盘消息就会导向该窗口,该窗口也成为“活动窗口”。 窗口如何取得输入焦点?通常被鼠标单击的窗口会得到输入焦点,除此之外,程序本身也可以利用SetFocus()来指定哪个窗口拥有输入焦点。 CWnd* CWnd::SetFocus(); 如果调用某窗口的SetFocus()成员函数,该窗口就可以取得输入焦点,该函数返回前一个拥有输入焦点的窗口。 如果某个窗口的输入焦点被抢走,Windows系统就会发出WM_KILLFOCUS消息给这个失去输入焦点的窗口,同时还会告诉该窗口下一个取得输入焦点的窗口的指针。而获得输入焦点的窗口则会收到WM_SETFOCUS消息。 消息响应函数分别为: afx_msg void OnKillFocus(CWnd* pNewWnd); 其中的参数为得到输入焦点的窗口的指针。 Afx_msg void OnSetFocus(CWnd* pOldWnd); 其中的参数为失去输入焦点的窗口的指针。
- 输入焦点
- vc6设定输入焦点
- CDialog输入焦点
- 输入焦点的传递
- 输入焦点的传递
- 输入焦点的传递
- 获得输入焦点
- html切换输入焦点
- 输入框的获取焦点、失去焦点
- 输入框获得焦点和失去焦点
- input输入框获取焦点、获取焦点位置、焦点设置
- asp.net输入焦点问题
- js获取文本框输入焦点
- android 取消输入框焦点
- cxGrid单元格获得输入焦点
- UGUI InputField获取输入焦点
- Bootstrap3 表单-输入框焦点
- UGUI InputField获取输入焦点
- 正则表达式
- 单目运算符++ --
- 云端软件平台与虚拟系统大比拼
- [转]Trie树
- SQL Server 索引结构及其使用(一)
- 输入焦点
- 发布全局程序集缓存GAC 最简步骤
- STA 基础知识
- IT技术人员应知行业潜规则
- According to C standard, it only supports output text in MBCS (Multi-Byte Character String)
- (转)NMock --- 从零开始
- 自由职业者如何实现自我激励
- 我的初学资料~1
- oracle 数据类型详解---日期型(叶正盛)