バルーンチップをエミュレートするカスタムウィジェットがあります。正しく表示されるためには、ウィジェットは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. どこでElasticSearchを使うことができますか?MongoDBはどこで利用できますか?
- 2. アップル - オフラインモードでも「ディクテーション」のアップルデバイスが利用できますか?
- 3. Xcode 4.3のインストール後もファイルマージが利用できますか?
- 4. Grid.columns.editableは利用できませんどこが間違っていますか?
- 5. どのPythonモジュール、ライブラリがOSX Automationで利用できますか?
- 6. Wordpress - Page - 「このサイトはもう利用できません」
- 7. Google In-App Subscriptionはエジプトでも利用できますか?
- 8. CoreTelephonyフレームワークもFacetimeで利用できますか?
- 9. QTで使用するOpenCVをセットアップしました。 Visual Studioでもこのインストールを使用できますか?
- 10. Pythonの組み込みメソッドはどこでも別の名前空間で利用できますか?
- 11. constはどこでも使用できますか?
- 12. どこでもグリッドを使用できますか?
- 13. cmakeパーサ/レクサー(bison/flex)はどこかで利用できますか?
- 14. 利用可能なStanfordCoreNLPフランスモデルは、どのtreebankで利用できますか?
- 15. UIRequiresPersistentWifi - これはまだ4.2で利用できますか?
- 16. Wordpressのstyle.cssテンプレート要素の構文はどこでも利用できますか?
- 17. どのスカラーコンパイラプラグインが利用できますか?
- 18. ブロックを何度も再利用できますか?
- 19. visibleRectメソッドはiPhoneでも利用できますか?どうすればそれを見つけることができますか?
- 20. QTにはOpenStreetMapを利用するライブラリがありますか?
- 21. 利用できるものは何ですか?
- 22. 誰もこのアプリが0のデバイスで利用できる理由を知っていますか?
- 23. QML/QTの業界での利用
- 24. Herokuではどのレベルのログを利用できますか?
- 25. MongoでClusterListenerをどのように利用できますか?
- 26. 最も効果的なベイジアンネットワークJava APIが利用できますか?
- 27. Qt信号が値を返すことはできますか?
- 28. CUDAまたはIntelのグラフィックカードで利用できるものは何ですか?
- 29. Qt setStyleSheetどのようなフォントを使用できますか?
- 30. Unsplashオブジェクトメソッドはコンソールからは利用できますが、ビューからは利用できません
現在のLinuxがARGBをサポートしていないのは、どのように共通するのかまれですか?どういうわけかそれを照会することはできますか? –
最近のハードウェア/ディストリビューションでは問題はないと思います。とにかく、xdpyinfoを使うか、設定ファイルxorg.confを見て情報を得るべきです。おそらく、組み込みのLinuxシステムにいくつかの問題があるかもしれません。これはさらに何かを与える:http://stackoverflow.com/questions/2434511/what-pixel-format-does-x-server-use。 –