掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ダイアログボックスを作るには? (ID:51446)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
色々やってみた所、今度は表示されなくなってしまいました... 以下コードです。 DialogBoxParamの第五引数はやはり指定した方がいいのでしょうか? 宜しくお願いします。 LRESULT CALLBACK WindowProc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { HINSTANCE hInstance; hInstance = (HINSTANCE)GetWindowLong(hwnd,GWL_HINSTANCE); switch(msg) { case WM_DESTROY: PostQuitMessage(0); return 0; case WM_COMMAND: // 何を押したかの判別 CommandProc(hwnd,HIWORD(wparam),LOWORD(wparam),(HWND)lparam); return 0; default: return DefWindowProc(hwnd,msg,wparam,lparam); } } LRESULT CommandProc(HWND hwnd,WORD wNotifyCode,WORD wID,HWND hwndCtl) { switch(wID) { HINSTANCE hInstance; case ID_DIALOG: // ダイアログボックス出現 hInstance=(HINSTANCE)GetWindowLong(hwnd,GWL_HINSTANCE); if(DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_DIALOG1), hwnd,(DLGPROC)DialogProc,NULL)==IDOK) { UpdateWindow(hwnd); } break; } BOOL CALLBACK DialogProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam) { switch(msg) { case WM_INITDIALOG: // ここに初期化関数が入る return FALSE; case WM_COMMAND: switch(wparam) { case IDOK: EndDialog(hwnd,IDOK); return TRUE; case IDCANCEL: EndDialog(hwnd,IDCANCEL); return TRUE; default: return E_FAIL; } return 0; } return FALSE; }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.