4

wxWidgets に wxPython バインディングを使用しています。PNG 画像とカウント アルファ チャネルからカスタム形状のウィンドウを作成することは可能ですか? VS2010 のスプラッシュ スクリーンを見て、私が何を意味するかを確認してください。

代替テキスト

ハイライトされたゾーン (丸みを帯びた角と影) はシャープではなく、滑らかに見えるようにアルファチャンネルを使用しています。

更新:カスタムシェイプだけでなく、スムーズなカスタムシェイプも欲しい

更新 2 : wx でこれを行う方法がないようです :(

4

3 に答える 3

2

wxpythonのドキュメントとデモshapedwindowからを見てください

于 2010-10-11T23:35:29.440 に答える
0

私の知る限り、これを達成する方法が少なくとも 1 つあります。

  1. スプラッシュ ウィンドウを作成しますが、表示しません (作成して初期化するだけです)。このウィンドウは縁がなく、将来の影のグラデーションのためにいくらかの余白が必要です。
  2. 下にあるウィンドウの部分を画像にグラデーションします。
  3. スプラッシュ ウィンドウを表示します。保存された画像をペイントし、必要なすべての透明なものを使用して影とスプラッシュ画像を描画します。

ただし、この方法はスプラッシュ画面にのみ適しています:(

于 2010-11-02T15:58:35.080 に答える
0

スプラッシュ スクリーンが必要な場合は、マスキングをサポートするAdvancedSplashクラスを使用できます。

于 2010-10-11T13:23:05.923 に答える