Last Updated 2004/07/16
Programming Tips Visual C++ MFC ウィンドウ  索 引 
フルスクリーンなウィンドウ
2004/07/16

ウィンドウを画面いっぱいにして,最大化最小化移動が出来なくするには,以下の様にする.

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
    cs.style |= WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_THICKFRAME;
    cs.x = 0;
    cs.y = 0;
    cs.cx = GetSystemMetrics(SM_CXSCREEN);
    cs.cy = GetSystemMetrics(SM_CXSCREEN);
}

移動は WM_MOVE をつかまえて元の位置に戻してしまう.

void CMainFrame::OnMove(int x, int y) 
{
    MoveWindow(0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CXSCREEN), TRUE);
}


また,移動させない方法は WM_NCHITTEST で常に「クライアント領域」と返す方法もある.


参照
フルスクリーンなウィンドウ(その2)
前後のTips
フルスクリーンなウィンドウ

DSS ProgrammingTipsCGI Ver2.02