📄 untitled-31.txt
字号:
件,例如 Shift键是否被按下,Caps lock是打开还是关闭,以及键盘布局不同等等这些事情交
给Windows处理。
3.2.1输入焦点
和鼠标一样,键盘也是被所有应用程序共享的全局硬件资源。通过标识光标下的窗口,
Windows可以确定给哪个窗口发送鼠标消息。而键盘消息的去向却不是这样。Windows将
键盘消息送到带有“输人焦点”的窗口。在任何时候,只有一个窗口具有输人焦点。通常有
输人焦点的窗口是活动应用程序的主窗口。然而,输人焦点也可能属于主窗口的子窗口或
在对话框中的控件。不管是谁,Windows总是将键盘消息送到拥有焦点的窗口。如果您的
应用程序的窗口没有子窗口,键盘处理就比较直接:当应用程序处于活动状态,它的主窗口
就接收键盘消息。如果焦点转移到子窗口,键盘消息也会转移到子窗口而且以后将停止给
主窗口发送消息。
Windows用WM—SETFOCUS和WM—KILLFOCUS消息通知即将接收或失去输人焦点的
窗口,MFC程序处理如下:
人 In CMalflwlndow’s message map
ON一Mi一SETFOCUS()
ON—WM-KILLFOCUS()
void CMainwindow:: OnsetFocus(CWnd。 poldwnd)
z
人 CMalnwindow nowhas the input focus. pci狈nd
// identifies the window that lost the input focus.
// pOldwnd will be NULL if the window that lost the
人 focus was createdby another thread.
Z
voidCMainwindow::onKillFocus(CWnd。 pNeWWnd)
Z
//CMaiAN二五一ndow上又一s about一L二二o lose theinput focus.
// pNewwnd ldent土f主esthe w工ndow that w土1工 rece土ye
//the input focus.pNeWWnd will beMILL if the
// window that’s receiving the focus is owned by
// another thread.
3
应用程序可以用 CWnd:: SetFocus把输人焦点转移到另一个窗口:
pwnd-> SetFocus();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -