Ubuntu 17.04にアップデートしてから、Qt5アプリケーション(Qt Creatorなど)はGTKテーマを使用しなくなります。qt5ctを使用してこれを変更しようとしましたが、パッケージがインストールされていても、FusionおよびWindowsのスタイルしか使用できませんqt5-gtk-platformtheme
。
これをどのように修正できますか?
編集:私はUnityを使用しています。
Ubuntu 17.04にアップデートしてから、Qt5アプリケーション(Qt Creatorなど)はGTKテーマを使用しなくなります。qt5ctを使用してこれを変更しようとしましたが、パッケージがインストールされていても、FusionおよびWindowsのスタイルしか使用できませんqt5-gtk-platformtheme
。
これをどのように修正できますか?
編集:私はUnityを使用しています。
回答:
Qt5アプリケーションのルックアンドフィールは、プラットフォームのテーマとスタイルによって決まります。プラットフォームのテーマはアイコンやフォントなどを担当し、スタイルはウィジェットのレンダリング方法を制御します。Qt CreatorなどのアプリケーションがGTK3プラットフォームテーマを標準で使用していることがわかると思います。
この問題はQt5.7以降に発生しています。このリリースでは、GTK2プラットフォームのテーマとスタイルが削除され、GTK3プラットフォームのテーマに置き換えられました。私は最近Qt開発者と話し合っており、プラットフォームのテーマを補完するGTK3スタイルがないようで、現在これを将来実装する予定はありません。したがって、Ubuntuでは、デフォルトのスタイルはGTK3プラットフォームテーマを使用した「Fusion」です。
ネイティブスタイルを追加するには、次の2つの方法があります。
qtstyleplugins
ダウンロードできるという別のパッケージで引き続き利用できます。残念ながら、GTK2スタイルはGTK3プラットフォームのテーマと互換性がありません。GTK2スタイルを使用する場合は、GTK2プラットフォームテーマを使用する必要があります。これは、ダイアログなどがUbuntu 17.04でネイティブに見えないことを意味します。ただし、「Fusion」より優先する場合があります。QGnomePlatform
あり、ここでadwaita-qt
利用できます。これにより、Ubuntu Gnomeを使用するときに完全にネイティブなルックアンドフィールが提供されます。Qt Creatorの場合、グローバルなテーマ/スタイルの場所を使用しているかどうかは100%わかりません。{Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\platformthemes\
およびにインストールする必要がある場合があり{Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\styles\
ます。
あなたがパッケージqt5ct
をインストールする必要があることとは別に、qt5-style-plugins
qt5ctに 'gtk2'テーマを取得する必要があります
sudo apt-get install qt5-style-plugins
そして、あたりとしてqt5ctのドキュメント、設定することを忘れないでくださいQT_QPA_PLATFORMTHEME=qt5ct
中/etc/X11/Xsession.d/56xubuntu-session
および/または/etc/environment