UI制御– category –
-
UI制御
【MFC】ボタンの色がOnCtlColorで変わらない:BS_OWNERDRAWとDrawItemで背景色と文字色を変更する
MFCのダイアログで、非常停止のようなボタンを赤くしようとしてOnCtlColorでCTLCOLOR_BTNのときに赤いブラシを返しても、プッシュボタンの面と文字の色は変わりません。プッシュボタンは、OnCtlColorが返したブラシを使わずにシステムの色で描かれるためで... -
UI制御
【MFC】CFileDialogの複数選択が1件だけ:バッファ不足を直す
CFileDialogにOFN_ALLOWMULTISELECTを付けて複数選択を有効にすると、DoModalはIDOKを返すのに、選んだはずの件数が返ってきません。必要なのは、ダイアログが返す一覧が全部入る大きさのバッファを自分で用意して、その先頭をm_ofn.lpstrFileに、文字数を... -
UI制御
【MFC】CEditを数値入力に制限する:ES_NUMBERで防げない符号・小数・貼り付け
数値だけを入れてほしい入力欄にES_NUMBERを付ける、というのはMFCのダイアログでよく見かける書き方です。キーボードから数字以外を打っても入りません。ただ、このスタイルはキーボードからの打ち込みにしか効かず、貼り付けた文字やSetWindowTextで設定... -
UI制御
【MFC】CListBox vs CListCtrl: どっちを使うべきか?
Visual Studio 2026 検証済み。CListBox と CListCtrl の使い分けを、1項目1文字列の選択と複数列の表形式という実例で確認します。LBS_MULTICOLUMN の位置づけ、通知メッセージ、載せ替え時の差分まで含めて判断基準を解説します。 -
UI制御
【MFC】GetWindowRect vs GetClientRect:スクリーン座標とクライアント座標
Visual Studio 2026 検証済み。GetWindowRect と GetClientRect の違いを、移動時・サイズ変更時・座標変換時の実測値で確認します。ScreenToClient / ClientToScreen / MapWindowPoints の使い分けと、描画やレイアウトで混同しない判断基準を解説します。 -
UI制御
【MFC】OnCtlColor: コントロールの背景色を変える
Visual Studio 2026 検証済み。OnCtlColor による色変更。エディットやスタティックコントロールの背景色・文字色を、ブラシハンドルを返すことでカスタマイズする方法。
1