WS_TABSTOPがウィンドウペイントの順序に影響を与える原因は何ですか?
-
13-11-2019 - |
質問
WTLでは、CbitMapButtonはPNGのように、透明レイヤー付きの画像をサポートしていません。 そのため、GDI +を使用してPNGを描画するためのコードをカスタマイズし、それをCpngButtonとして名前を付けます。 しかし、物事はWin XPには奇妙です。 ボタンが他のウィンドウで重なっていると、ボタンが最初にWM_PAINTを受信し、その後親を受け取り、結果が正しくありません。
--->
リソースをチェックし、ボタンのテンプレートからWS_TABSTOP属性を削除します。 WS_TABSTOPがウィンドウ塗装順に影響を与える原因は何ですか?
解決
背景を描くと起こるのは何ですか。それはウィンドウに「穴」を残すと、あなたはあなたの窓の後ろにあるウィンドウのピクセルが表示されます。またはそのようなウィンドウがない場合はデスクトップ。それ以外の場合は、これがWS_TABSTOPで何をしなければならないのか確認してください。
WS_EX_TRANSPARENTスタイルのフラグを使用します。これにより、ボタンの親をクライアントウィンドウに描画してバックグラウンドピクセルを提供するようにWindowsに指示します。
所属していません StackOverflow