ウィンドウサイズを制限する

ウィンドウ最大・最小サイズを制限するには”WM_GETMINMAXINFO”メッセージを捕まえて”MINMAXINFO構造体”に最大・最小サイズを指定する。

WM_GETMINMAXINFO
  lParam = MINMAXINFO *
MINMAXINFO構造体
  POINT ptReserved; // 予約済み
  POINT ptMaxSize; // ウィンドウを最大化したときのサイズ
  POINT ptMaxPosition; // ウィンドウを最大化したときの位置
  POINT ptMinTrackSize; // ウィンドウの最小サイズ
  POINT ptMaxTrackSize; // ウィンドウの最大サイズ
例:ウィンドウの最小サイズを320×240にしたい場合
case WM_GETMINMAXINFO:
  MINMAXINFO *pmmi;
  pmmi = (MINMAXINFO *)lParam;
  pmmi->ptMinTrackSize.x = 320; // 最小幅
  pmmi->ptMinTrackSize.y = 240; // 最小高
  return 0; // 処理したら0を返す
※この記事は、以前プログラミングTipsとして公開していたものに加筆・修正を行ったものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です