win32 sdk 對話框上的編輯框控件響應事件

整理一下,希望對有用的同學有所幫助。
//編輯控件消息處理
LONG OldProc;
LRESULT CALLBACK EditProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam )
{
  switch( message )
{
case WM_LBUTTONDOWN:
{
//左鍵按下時修改編輯框的文本
SetWindowText(hWnd, L"請按任意鍵..");
}
break;
}
//一定要這麼加,只處理需要的消息,不需要的返回給父窗口
  return CallWindowProc((WNDPROC)OldProc, hWnd, message, wParam, lParam);
}
//對話框回調函數:
int WINAPI KeyDialogProc(
    HWND hwndDlg,
    UINT uMsg,
    WPARAM wParam,
    LPARAM lParam
)
{
switch(uMsg)
{
case WM_INITDIALOG:
    {
         // 編輯框控件 id 504
         HWND hWnd = GetDlgItem(hwndDlg, 504);
        //初始化編輯框控件回調函數
        OldProc = SetWindowLong(hWnd, GWL_WNDPROC, (LONG)EditProc);
break;
case WM_COMMAND:
switch(LOWORD(wParam))
{
    case 500:
    {
       //。。。。
    }
break;
}
return FALSE;
}


轉自:http://hi.baidu.com/%D5%E6%B5%C4%BB%B9%BF%C9%D2%D4%B0%C9/blog/item/b7a68a72c7409d0a8701b09c.html

發佈了40 篇原創文章 · 獲贊 23 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章