さて、私のアプリケーションには、たくさんの winAPI といくつかのカスタム コントロールがあります。わーい...
現在、通常、アニメーション、状態の変更などのために静かに再描画するだけで、すべて正常に機能します。
しかし、私は fix() と呼ばれるクラス Window のメソッドを持っています。これは、ウィンドウ全体を更新する必要があるたびに呼び出されます。コントロールのサイズを変更し、ウィンドウを無効にします。
これが発生すると、背景が描画され、次にタブ コントロールが描画され、その上に他のすべてが描画されます。これにより、特にウィンドウのサイズを変更するときに、非常にいらいらするまばたきが発生します (fix() が常に呼び出されるため)。
私が試したこと:
- WS_EX_COMPOSITED。これは、個々のコントロールをダブル バッファリングするだけです。改善されていますが、ちらつきは避けられません。
- 背景描画をオフにします。問題をほとんど解決せず、実際に事態を悪化させます。
だから:ウィンドウ全体をダブルバッファリングできるようにするためのテクニック/方法/何でも必要です。WM_PAINT メッセージを自分で処理することが解決策になるかもしれないと考えましたが、どこから始めればよいかわかりません。これも仕方のないことなのかな…という感じです。
助けてください、これは重大な問題です。この愚かな小さな問題が修正されると、私は非常に安心します.