32 ビット ビットマップの描画中に、ピクセルごとのアルファ ブレンドを実装するコントロールを作成しようとしています。
CWnd を拡張し、リソース エディターで静的コントロールを使用します。アルファ チャネルを正しくペイントできましたが、静的コントロールは灰色の背景をペイントし続けます。
コントロールが背景を描画しないように OnEraseBkgnd を上書きしましたが、うまくいきませんでした。WS_EX_TRANSPARENT を使用して、最終的にそれを行うことができました。
私の問題は、私のコントロールが他のコントロールの上に配置されていることです。ダイアログが最初にペイントされたときはすべて正常に動作します...しかし、「親」コントロール (つまり、自分のコントロールの下にあるコントロール) をクリックすると、コントロールは WM_PAINT メッセージを受け取りません。そのため、もう塗装されていません。
アプリケーションを最小化して再度最大化すると、コントロールが再び描画されます。
誰かヒントを教えてください。私はこのコントロールに夢中になっています!!!
ありがとう。