掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
CreateWindowEx()で作ったウィンドウを全て閉じるには? (ID:68876)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
これもありそうです。 #include <windows.h> #include "resource.h" INT_PTR CALLBACK DialogProc ( HWND, UINT, WPARAM, LPARAM ) ; BOOL CALLBACK EnumChildProc ( HWND, LPARAM ) ; HINSTANCE hInst ; int WINAPI WinMain ( HINSTANCE hInstance, HINSTANCE, LPSTR, int ) { hInst = hInstance ; DialogBox ( hInstance, MAKEINTRESOURCE ( IDD_DIALOG1 ), NULL, DialogProc ) ; return 0 ; } INT_PTR CALLBACK DialogProc ( HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam ) { switch ( msg ) { case WM_INITDIALOG : { HWND hBtn0 = CreateWindowEx ( 0, TEXT( "button" ), TEXT( "button0" ), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 10, 10, 90, 30, hDlg, ( HMENU ) 0, hInst, 0 ) ; HWND hBtn1 = CreateWindowEx ( 0, TEXT( "button" ), TEXT( "button1" ), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 10, 50, 90, 30, hDlg, ( HMENU ) 1, hInst, 0 ) ; HWND hBtn2 = CreateWindowEx ( 0, TEXT( "button" ), TEXT( "button2" ), WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 10, 90, 90, 30, hDlg, ( HMENU ) 2, hInst, 0 ) ; return TRUE ; } case WM_COMMAND : switch ( LOWORD ( wParam ) ) { case IDOK : EnumChildWindows ( hDlg, EnumChildProc, 0 ) ; break ; case IDCANCEL : EndDialog ( hDlg, 0 ) ; break ; } return TRUE ; case WM_CLOSE : EndDialog ( hDlg, 0 ) ; return TRUE ; } return FALSE ; } BOOL CALLBACK EnumChildProc ( HWND hChild, LPARAM lParam ) { if ( ! hChild ) { return FALSE ; } // 終了条件を必要に応じて書く DestroyWindow( hChild ) ; return TRUE ; }
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.