Jak mogę uzyskać, aby aplikacje Qt5 korzystały z motywu GTK w Ubuntu 17.04?


9

Od czasu aktualizacji do Ubuntu 17.04 aplikacje Qt5 (takie jak Qt Creator) nie będą już używać motywu GTK. Próbowałem to zmienić za pomocą qt5ct , ale dostępne są tylko style Fusion i Windows , nawet jeśli pakiet qt5-gtk-platformthemejest zainstalowany.

Jak to może zostać naprawione?

Edycja: Używam Unity.

Odpowiedzi:


7

Wygląd aplikacji Qt5 zależy od motywów i stylów platformy. Motyw platformy odpowiada za ikony, czcionki itp., A styl kontroluje sposób renderowania widżetów. Myślę, że Twoja aplikacja, taka jak Qt Creator, korzysta z motywu platformy GTK3 w standardzie.

Problem występował od wersji Qt5.7. W tej wersji motyw i styl platformy GTK2 został usunięty i zastąpiony motywem platformy GTK3. Niedawno rozmawiałem z deweloperami Qt i wydaje się, że nie ma stylu GTK3, który mógłby uzupełnić motyw platformy, i obecnie nie ma planów wdrożenia tego w przyszłości. Dlatego w systemie Ubuntu domyślnym stylem jest „Fusion” przy użyciu motywu platformy GTK3.

Istnieje kilka metod dodawania stylu macierzystego:

  1. Stary motyw i styl platformy GTK2 są nadal dostępne w osobnym pakiecie o nazwie, qtstylepluginsktóry można pobrać tutaj . Niestety styl GTK2 nie jest zgodny z motywem platformy GTK3. Jeśli chcesz użyć stylu GTK2, musisz użyć motywu platformy GTK2. Oznacza to, że twoje okna dialogowe itp. Nie wyglądają natywnie w Ubuntu 17.04. Możesz jednak preferować opcję „Fusion”.
  2. Nie określiłeś, jakiego środowiska pulpitu używasz. Istnieje motyw i styl platformy innej firmy o nazwie QGnomePlatformdostępny tutaj i adwaita-qtdostępny tutaj . Zapewnia to w pełni natywny wygląd podczas korzystania z Ubuntu Gnome.

W przypadku Qt Creator nie jestem w 100% pewien, czy używa globalnych lokalizacji motywów / stylów. Być może będziesz musiał zainstalować je w {Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\platformthemes\i {Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\styles\.


Dziękuję za szczegółowe wyjaśnienie. Nie miałbym nic przeciwko Fusion, jeśli renderowanie czcionek nie byłoby tak straszne. Czy jest gdzieś otwarty błąd?
— Philipp Ludwig

Czcionki nie wydają się słabe z tego, co widziałem w moim systemie. Czy masz zrzut ekranu z tego?
— gsxruk

Przesłałem tutaj zrzut ekranu: imgur.com/a/u34W6 Left to Qt Creator, right to sesja vim w gnome-terminal. Zgadzam się, że jest to bardzo subtelne, ale czcionki Qt po prostu wydają mi się rozmyte (lub rozmazane?). Obie aplikacje są ustawione na Ubuntu Mono 12.
— Philipp Ludwig

Rozumiem, co masz na myśli, ale zgadzam się, że to subtelne. Przepraszamy, nie wiem, co zasugerować w tej sprawie.
— gsxruk

Jeśli jesteś zainteresowany: miałem lepsze wyniki z nieskończonością na funtoo, ale o ile wiem, ten zestaw łatek nie jest już właściwie utrzymywany. W każdym razie czcionki wyglądają znacznie lepiej na moim laptopie, który ma panel IPS, więc może muszę po prostu zaktualizować 7-letni wyświetlacz na pulpicie. Dzięki za pomoc!
— Philipp Ludwig

5

Oprócz tego qt5ctmusisz także zainstalować qt5-style-pluginspakiet, powinieneś uzyskać motyw „gtk2” w qt5ct

sudo apt-get install qt5-style-plugins

I, zgodnie z dokumentacją qt5ct , nie zapomnij ustawić QT_QPA_PLATFORMTHEME=qt5ctw /etc/X11/Xsession.d/56xubuntu-sessioni / lub/etc/environment


Ta odpowiedź działa dla mnie bez instalowania qt5ct.
— DMT,

tak, instalowanie tylko wtyczek w stylu qt5 (tj. bez qt5ct) działa dobrze w przypadku stylizacji qt5.7 + z gtk2. qt5ct jest potrzebny tylko wtedy, gdy chcesz także używać innych stylów dla qt5.7 + niż gtk2
— Gyll

btw, mając dość i zmęczenia niespójnościami na moim pulpicie, skończyłem z tworzeniem własnego motywu, możesz to sprawdzić, jeśli niespójności doprowadzą Cię do szału: xfce-evolution.sourceforge.net
— Gyll
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.