2017-10-01 8 views
0

の前に行く:最大化WS_POPUPウィンドウは、私がそのコードをC++でウィンドウを作成していタスクバー

HWnd = CreateWindow(wc.lpszClassName, 
    "myapp", 
    WS_POPUP |WS_VISIBLE, 
    10, 10, 1000, 800, 0, 0, hInst, NULL); 

私が欲しいと表示されますが、私はこのようにして、それを最大化する場合:

ShowWindow(hwnd, SW_SHOWMAXIMIZED); 

それはタスクバーが隠されるように全画面ウィンドウのようです。 それはPOPUPウィンドウだからだと思いますが、これは表示されたいのと同じです。

自分の最大化関数を作成する必要がありますか、それを回避するパラメータがありますか?

おかげ

+0

ポップアップウィンドウを最大化することは適切ではありません。 GetSystemMenu + EnableMenuItemを使用してユーザーが最大化するのを止めることを検討してください。または、WM_GETMINMAXINFOを処理して、境界をモニタの作業領域に制限します。 –

答えて

1

あなたはWS_CAPTION | WS_SYSMENU | WS_MAXIMIZEBOXスタイルを追加することができます。

キャプションなしのウィンドウを作成する場合は、SystemParametersInfoを指定してSPI_GETWORKAREAフラグを指定して照会できるデスクトップワークエリアに手動でウィンドウサイズを調整する必要があります。

+0

はい私はSystemParametersInfoでキャプションを必要としません。 – Entretoize

関連する問題