|
ウィンドウサイズの変更を制限する |
|
// ウィンドウ作成時の情報をどこかに保存しておく const DWORD c_dwStyle = WS_OVERLAPPEDWINDOW; const DWORD c_dwExStyle = 0; const BOOL c_bMenu = FALSE; // プロシージャ関数内 case WM_WINDOWPOSCHANGING: { // 幅の変更を抑止する(例/クライアントサイズ: 幅768,高さ512まで) LPWINDOWPOS lpwndpos = (LPWINDOWPOS)lParam; RECT rc = { 0, 0, 768, 512 }; ::AdjustWindowRectEx(&rc, c_dwStyle, c_bMenu, c_dwExStyle); int nWidth = rc.right - rc.left; int nHeight = rc.bottom - rc.top; if (lpwndpos->cx > nWidth) lpwndpos->cx = nWidth; if (lpwndpos->cy > nHeight) lpwndpos->cy = nHeight; return TRUE; } |