vc入門寶典(十) (轉)
訊息
/develop/author/netauthor/he_zhidan/">何志丹
PreTranslateMessage顧名思義,就是在訊息被翻譯之前,做的一些事.我們可以遮蔽一個鍵或一個命令.
下面是一些常用訊息的相關資訊.這些資訊放pMsg中.
WM_KEYDOWN
nVirtKey = (int) wParam; 鍵值,和ascll碼有許多相同的地方 */
lKeyData = lParam; 有關 */
WM_CHAR
chCharCode = (TCHAR) wParam;
lKeyData = lParam;
WM_COMMAND
wNotifyCode = HI(wParam);
wID = LOWORD(wParam);
hwndCtl = (HWND) lParam;
WM_LBUTTONDOWN
fwKeys = wParam; //
xP= LOWORD(lParam); // 滑鼠橫座標
yPos = HIWORD(lParam); // 滑鼠縱座標
fwKeys
MK_CONTROL MK_LBUTTON MK_MBUTTON MK_RBUTTON MK_SHIFT
WM_MOUSEMOVE
fwKeys = wParam;
xPos = LOWORD(lParam);
yPos = HIWORD(lParam);
下面這個例子演示了,PreTranslateMessage的常用用法.
BOOL CPreTranslateDlg::PreTranslateMessage(MSG* pMsg)
{
if(WM_KEYDOWN == pMsg->message )
if(0x30 == (int) pMsg->wParam)
{
return true; /*禁止在編輯框中輸入0(ascll 0x30)*/
}
if(WM_CHAR == pMsg->message )
if('A' == (TCHAR) pMsg->wParam)
{
return true; /*禁止在編輯框中輸入'A'*/
}
if(WM_MOUSEMOVE == pMsg->message)
if(MK_CONTROL & pMsg->wParam) /*當ctrl被按下滑鼠移動時,顯示相關資訊*/
{
int xPos = LOWORD(pMsg->lParam);
int yPos = HIWORD(pMsg->lParam);
CString str ;
str.Format("滑鼠的座標%d %d",xPos,yPos);
AfxMessageBox(str);
}
if(WM_COMMAND == pMsg->message)
if(ID_1 == LOWORD(pMsg->wParam))//禁止選單項ID_1,注意按鈕傳送的是BN_CLICKED
{
return true;
}
return CDialog::PreTranslateMessage(pMsg);
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-982729/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- vc入門寶典(九) (轉)
- VC入門寶典三(String) (轉)
- vc入門寶典八(基本操作) (轉)
- vc入門寶典(一)(選單) (轉)
- vc入門寶典七(工具欄) (轉)
- vc入門寶典六(多執行緒) (轉)執行緒
- [轉]BI入門經典
- BI入門經典 (轉)
- Tungsten Fabric入門寶典丨編排器整合
- 【官方重磅釋出】Google AdMob新手入門寶典Go
- Tungsten Fabric入門寶典丨TF元件的七種“武器”元件
- VC常見入門問題總結(二) (轉)
- VC常見入門問題總結(一) (轉)
- Tungsten Fabric入門寶典丨多編排器用法及配置
- Tungsten Fabric入門寶典丨首次啟動和執行指南
- 十大Python經典面試題,入門必知!Python面試題
- Tungsten Fabric入門寶典丨關於安裝的那些事(下)
- Tungsten Fabric入門寶典丨關於叢集更新的那些事
- Tungsten Fabric入門寶典丨8個典型故障及排查Tips
- Tungsten Fabric入門寶典丨關於服務鏈、BGPaaS及其它
- Kotlin 語言入門寶典 | Android 開發者 FAQ Vol.5KotlinAndroid
- 《Flutter 入門經典》之“Flutter 入門 ”Flutter
- Webpack經典入門Web
- Tungsten Fabric入門寶典丨開始第二天的工作
- 大資料架構師從入門到精通 學習必看寶典大資料架構
- 資料治理之後設資料管理的利器——Atlas入門寶典
- VC中文FAQ寶庫之5:怎樣載入其他的應用程式 (轉)
- windows網路程式設計經典入門 (轉)Windows程式設計
- 面試寶典面試
- Linux下Oracle安裝寶典 (轉)LinuxOracle
- Linux下Oracle安裝寶典(轉)LinuxOracle
- Tungsten Fabric入門寶典丨說說L3VPN及EVPN整合
- Tungsten Fabric入門寶典丨關於多叢集和多資料中心
- 一站式後設資料治理平臺——Datahub入門寶典
- VC++ MFC入門簡明教程,我當時就是看了它一天入門的 (轉)C++
- JFreeChart介紹及經典入門資料(轉)
- JAVA的入門基礎一些精典(轉)Java
- Kafka入門經典教程Kafka