バルーンチップをエミュレートするカスタムウィジェットがあります。正しく表示されるためには、ウィジェットはQWidget属性Qt::WA_TranslucentBackground
に依存します。私のアプリケーションはすべての主要なプラットフォーム(Windows XP、Windows 7、Linux、Mac)で動作するはずですので少し気になります。この属性はすべての主要なプラットフォームで利用できますか?そうでない場合、それが照会できるのですか? testAttribute()
はそうしていません。属性が設定されているかどうかを返します。どこでもQt :: WA_TranslucentBackgroundが利用できますか?
答えて
これは、ARGBをサポートしないように設定されている場合、X11以上のLinuxを除いてのみ機能します。 QWidgetマニュアルを参照してください:
のQt 4.5以来半透明のWindows
を作成し、合成をサポートするウィンドウシステム上の半透明の 領域を持つウィンドウを作成することが可能でした。地域でトップレベルのウィジェットでこの機能を有効にするには
、)のsetAttribute(とその Qtの:: WA_TranslucentBackground属性を設定し、その背景が不透明色で塗られていること を確保 あなたは部分的に透明になりたいです。
プラットフォームメモ:
X11:この機能は、ARGBビジュアルと合成ウィンドウマネージャをサポートしているXサーバーの使用に依存しています。
Windows:透光性のためにウィジェットにはQt :: FramelessWindowHintウィンドウフラグが設定されている必要があります。
「透明性とダブルバッファリング」という段落もまた読んでください。面白いかもしれません。
Linuxのあなたは合成が有効になっているかどうかを確認する必要があります
bool QX11Info::isCompositingManagerRunning() [static]
例えば
#ifdef Q_WS_X11
if(QX11Info::isCompositingManagerRunning())
setAttribute(Qt::WA_TranslucentBackground);
#endif
この質問は古いですが、これは誰かを助けるかもしれません。
そして、Google以外のユーザーのために、丸められたOSDやスピーチバルーンポップアップなどのために、合成されていないデスクトップをサポートする必要がある場合、Qt [ShapedClock](https://doc.qt.io/ qt-5/qtwidgets-widgets-shapedclock-example.html)の例では、 'setMask'を使用して合成を行わずに非正方形のウィンドウを生成する方法を示しています。 – ssokolow
'setMask'を使わずに' Qt :: WA_TranslucentBackground'をlinuxで動かすことがあることに注意してください。いくつかの属性とウィンドウフラグも有効にする必要があります。 https://stackoverflow.com/a/30596357/999943 – phyatt
- 1. Xcode 4.3のインストール後もファイルマージが利用できますか?
- 2. CoreTelephonyフレームワークもFacetimeで利用できますか?
- 3. QTで使用するOpenCVをセットアップしました。 Visual Studioでもこのインストールを使用できますか?
- 4. Pythonの組み込みメソッドはどこでも別の名前空間で利用できますか?
- 5. constはどこでも使用できますか?
- 6. UIRequiresPersistentWifi - これはまだ4.2で利用できますか?
- 7. どのスカラーコンパイラプラグインが利用できますか?
- 8. Wordpressのstyle.cssテンプレート要素の構文はどこでも利用できますか?
- 9. ブロックを何度も再利用できますか?
- 10. visibleRectメソッドはiPhoneでも利用できますか?どうすればそれを見つけることができますか?
- 11. QTにはOpenStreetMapを利用するライブラリがありますか?
- 12. 誰もこのアプリが0のデバイスで利用できる理由を知っていますか?
- 13. Herokuではどのレベルのログを利用できますか?
- 14. Qt信号が値を返すことはできますか?
- 15. Meteor:テンプレートイベントはなぜ 'サブテンプレート'で利用できますが、テンプレートヘルパーは利用できませんか?
- 16. CUDAまたはIntelのグラフィックカードで利用できるものは何ですか?
- 17. F#CTPで誰かがスタンドアロンオプションを利用できますか?
- 18. どこでもJMeterのサポートを受けることができますか?
- 19. 私のアプリケーションは世界中で利用できますか、私の国でのみ利用できますか?
- 20. Dart VMは利用できますか?
- 21. どのようなロボット(Web)ライブラリがPythonで利用できますか?
- 22. phpでは、PHPプロジェクトのどこでもセッションを使用できますか?
- 23. システムコールはC言語以外の言語でも利用できますか?
- 24. WatinのようなものはC++で利用できますか?
- 25. iOS App Purchase:「最初のものを無料で利用できますか?
- 26. ActiveMQコンソールが利用できません
- 27. メソッド "glActiveTexture"が利用できません
- 28. サーブレットアクションが利用できません
- 29. モジュール 'MyApp'が利用できません
- 30. セキュリティサービスが利用できません。Weblogic
現在のLinuxがARGBをサポートしていないのは、どのように共通するのかまれですか?どういうわけかそれを照会することはできますか? –
最近のハードウェア/ディストリビューションでは問題はないと思います。とにかく、xdpyinfoを使うか、設定ファイルxorg.confを見て情報を得るべきです。おそらく、組み込みのLinuxシステムにいくつかの問題があるかもしれません。これはさらに何かを与える:http://stackoverflow.com/questions/2434511/what-pixel-format-does-x-server-use。 –