MFC 華而不實的滑鼠響應事件

2021-08-21 17:17:55 字數 1500 閱讀 4963

前幾天搞了注入dll**的問題,今天偶然想到如何實現控制項響應滑鼠事件,如何滑鼠移動到某控制項上靜態編輯框或者滑鼠顯示提示資訊,經過幾番搜尋,還好全部解決,就上回的**

先在maindialogwnd.cpp中宣告乙個物件用過存放滑鼠提示資訊

手動新增……,我還是再找找相關資料,竟然被我找到了函式名為wm_initdialog,而非oninitdialog,害得我好找啊,於是這樣:

在初始化oninitdialog裡新增如下**:

bool cmaindialogwnd::oninitdialog() 

象這樣子

在類嚮導裡新增pretranslatemessage訊息函式,同樣如下

新增如下**

bool cmaindialogwnd::pretranslatemessage(msg* pmsg) 

這是滑鼠提示資訊完成;如果要滑鼠移到某控制項,靜態編輯框顯示相應資訊,仍然在上面的函式中新增如下**

if(pmsg->hwnd == getdlgitem(idc_button1)->getsafehwnd() && pmsg->message == wm_mousemove)

else if(pmsg->hwnd == getdlgitem(idc_button2)->getsafehwnd() && pmsg->message == wm_mousemove)

象這樣:

ok,完成,試下

然後滑鼠放到button1上

然後滑鼠放到button2上

打完收工

VC 滑鼠事件的響應

滑鼠鍵包括左鍵 右鍵和中鍵 滾輪 每個鍵都有三種事件訊息,一是被按下,二是被釋放,三是雙擊。下表列出了滑鼠操作 訊息名稱及處理函式名。滑鼠操作 訊息名稱 處理函式名 左鍵按下 wm lbuttondown onlbuttondown 左鍵釋放 wm lbuttonup onlbuttonup 左鍵雙...

MFC 鍵盤響應事件

鍵盤響應有三個函式 1 wm keydown void cmyview onkeydown uint nchar uint nrepcnt uint nflags 2 wm char void cmyview onchar uint nchar uint nrepcnt uint nflags 3 ...

關於mfc中的滑鼠事件

前幾天徐老師的小學期,他丟給我了乙個學生的問題,問題和解決如下 問題 我想改變游標形狀 用以下函式 void cmy97testdlg onmousemove uint nflags,cpoint point 為什麼當游標移動到按鈕控制項上 就變回箭頭了 如果加一句setcature 游標就無法按下...