質問

私のアプリケーションには、アプリケーション用の標準のトップレベルウィンドウがあります。ウィンドウクロム(別名ウィンドウの非クライアント領域とも呼ばれる)の塗り直しを強制する必要があります。クライアント領域も塗り直されているかどうかは気にしませんが、クロム自体に塗り直しを強いる必要があります。

特に、Windows 7で動作するためにこれが必要です。他のOSバージョンで動作するかどうかは、特定のケースでは重要ではありません。解決策は、C、C ++、C#、またはその他の言語です。

役に立ちましたか?

解決

によると MSDN, 、 のようだ

RedrawWindow( hWnd, NULL, NULL, RDW_INVALIDATE | RDW_FRAME );

あなたが探しているものです。

RDW_FRAMEは、更新領域と交差するウィンドウの非クライアント領域の任意の部分を、WM_NCPAINTメッセージを受信させます。 RDW_INVALIDATEフラグも指定する必要があります。それ以外の場合、RDW_FRAMEには効果がありません。 wm_ncpaintメッセージは、通常、RDW_UPDATENOWまたはRDW_ERASENOWのいずれかが指定されていない限り、RedRawWindowの実行中に送信されません。

他のヒント

多分あなたはwm_ncpaintメッセージをウィンドウに送信することができます

http://msdn.microsoft.com/en-us/library/dd145212%28vs.85%29.aspx

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top