📄 untitled-27.txt
字号:
Create(strwndClass,T(”N。use Capture Demo(Capture Enabled)”》;
这样,每当鼠标指针在CMainwindow的客户区里出现时,Windows都将显示一个十字光标。
设定光标的第二种方法是调用 API函数:: SetCursor来响应 WM.SETCURSOR消息。当
光标在 CMainwindow的客户区上时,下列 onsetCursor函数将显示其句柄在 CMalnwindow::
rn-hCursor中保存的光标:
人 In CMalnwlndow’ s message map
ON.WMAs SETCURSOR()
B00LCMainwindow::onsetCursor(CWnd。 pwnd,UINTnHitTest,
uuur message)
g
。f(nH。iTest== HTCLIENT)
:: SetCursor(。hCursor);
return TRUE;
g
return CFramewnd.. onsetCursor(pwnd, nHltTest, message);
Z
在调用:: SetCursor之后返回 TRUE,以通知 Windows光标已被设置。在窗口的客户区以外产
生的WM.SETCURSOR消息被传递给基类以便显示默认光标。因为onsetCursor从不给Win.
d。WS显示类光标的机会,所以类光标被忽略了。
为什么想要使用onsetCursor而不采用把。hCursor注册为类光标的方法呢?假定当光
标在窗口的上半部分时想要显示一个箭头光标,而在下半部分时显示一个互形光标。用类
光标处理不了这种情况,但是onsetCursor可以漂亮地完成任务。当光标在CMainwindow的
客户区时,下列OnsetCursor处理程序即可以将光标设置为。hCursorArrow,也可以为
ill~-hCursorIBeam:
BOOLCMainwi。dow::onsetCursor(CWnd。 pwnd,UINTnHitTest,
UINT。essage)
(
。f(nH。iTes。== HTCLIENT) {
DWORD dwPOs=:: GetMeSSagePos();
CPo。nt point(LOWORD(dwPos), HIWORD(dwPos》;
ScreenToCI。ent(&point);
CRect rect;
GetCleentRect(&reCt);
.-SetCursor((po。nt.y< rect.He。ght()/ 2)?
。hCursorArrow:。hCursorIBearn);
工etllffl TRUE;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -