2

私の制御を超えて、いくつかの Windows フォームに TransparencyKey プロパティが設定されているアプリケーションがあります。これらのウィンドウが DirectDraw ビデオ サーフェスを持つ別のフォームを覆っている (その前にある) 場合、フォアグラウンド フォームがちらつきます (一部はフォームを表示し、一部は下のビデオを表示します)。問題は、TransparencyKey の色がアプリケーションのどこにも表示されないため、何も透明であってはならないということです。つまり、結果として、フォアグラウンド フォームが完全に不透明になるはずです。

ちらつきシナリオ

Windows フォームと組み合わせたときに DirectDraw サーフェスがちらついた経験がある人はいますか? 私はこれに何週間も取り組んできましたが、成功しませんでした。ありがとう!

4

1 に答える 1

1

申し訳ありませんが、その目標を完全に放棄して、別の方法を試してみることをお勧めします。

DirectDraw は画面に表示する方法の 1 つであり、リージョンを含むフォーム (いわゆる「透過キー カラー」からのマスクとしてオンザフライで作成される) は GDI を使用して作成されます。私が見ているように(そうでなければ証明したいのですが)、とにかくその2つのウィンドウを結合することはできません。

また、Windows のバージョンや使用するグラフィックス カードなどによって、異なる結果が得られる可能性があります。

反対に、制御できないフォームをハッキングして、それらから TransparencyKey プロパティを削除できますか? Win32 API でも?

于 2011-05-24T09:23:17.887 に答える