2012-01-06 20 views
1

私はwxGLCanvas上でwxを使って情報ウィンドウを描画しています。 OpenGLでレンダリングされたイメージとアルファブレンドされるように、そのウィンドウをフェードインする能力が必要です。これを行う方法はありますか?wxwidgetsで半透明のウィンドウを描画する

重複ウィジェットの背景を描画しないようにしましたが、白い四角形しか表示されませんでした。私はwxGraphicsContextも使用しようとしましたが、成功しませんでした。

私の次の考えは、ウィンドウをMemoryDCに描画してOpenGLでイメージを合成することですが、ウィンドウ内の何かでユーザーとのやりとりを防ぐことができます(少なくとも従来の手段による)。任意のヒントをいただければ幸いです。私はWindows 7とwxPythonを使用しています。

答えて

1

wx.Framesには0から255までの値を受け入れることのできるSetTransparentメソッドがあり、0は完全に透明、255は完全に不透明です。私はそれがあなたのために行くのかどうかは分かりませんが、もしそうなら、ここでは主題に関するチュートリアルがあります:http://www.blog.pythonlibrary.org/2008/04/14/doing-a-fade-in-with-wxpython/

+0

ありがとうございますが、これはトップレベルのウィジェットでしか動作しないようです。私が望むのは、子ウィジェットが半透明であることです。たぶん、私はトップレベルのフレームで子ウィジェットを偽造することができますが、それは悪い考えのように思えます。 – tkerwin

+0

フレーム内のすべてが透明になります。透明なものと透明なものを選択する方法はありません。 –

関連する問題