ダイアログ 🪟 1. ダイアログってなに? ダイアログ(ダイアログボックス)は、 ユーザーに何かを聞いたり、設定を入力させたりするための小さなウィンドウ です。 例: ファイルを保存するときの「名前を付けて保存」画面 「OK」「キャンセル」などを選ばせる小さなウィンドウ 設定画面(オプション、プロパティ) 🔄 2. モーダル vs モードレス 種類 特徴 例 モーダル 他のウィンドウを操作できなくなる(完了するまで) 「保存しますか?」などの確認ダイアログ モードレス 他のウィンドウも同時に操作できる 検索ウィンドウ、ツールパレット 💡 イメージ モーダル: 呼び出した人に返事を返すまで、他は触らせない! モードレス: 聞くけど、待たなくていいよ。他のことしててOK! 📦 3. よく使われる「コントロール(部品)」 🟢 ボタン類 名前 説明 Button(ボタン) 「OK」「キャンセル」など。押すと動作を実行。 CheckBox(チェックボックス) ON/OFF の選択に使う。複数選択も可能。 RadioButton(ラジオボタン) 選択肢を1つだけ選ぶ(複数ある中で1つ) 🔵 入力系 名前 説明 Edit(エディット) 文字を入力するテキストボックス。 ComboBox(コンボボックス) リストから選ぶ+入力もできる。 ListBox(リストボックス) 複数行の選択肢から選ぶ。複数選択可もあり。 🟣 表示系・他 名前 説明 Static(スタティック) 文字や画像を表示するだけのラベル。 GroupBox コントロールをグループ化して囲む枠。 ProgressBar(プログレスバー) 処理の進行度を表示するバー。 🧑‍💻 4. 実際に使うとどうなる? モーダルダイアログを表示するコード例(Win32 API) DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), hWnd, DialogProc); モードレスダイアログを表示するコード例 CreateDialog(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), hWnd, DialogProc); ShowWindow(hDlg, SW_SHOW); 📌 5. まとめ 項目 ポイント ダイアログ ユーザーに質問や操作を促す小ウィンドウ モーダル 他の操作をブロックして返事を待つ モードレス 他の操作もOK、自由に使える コントロール ボタン、入力欄、リストなど部品のこと 🧁 もっとわかりやすく例えると… ダイアログは コンビニのレジ 。 モーダルは「レジの人が“お会計終わるまで商品戻してね”って止める」状態。 モードレスは「セルフレジ。会計しながら他の人も動ける」状態です。