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.
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:
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”.
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
Oprócz tego
qt5ct
musisz także zainstalowaćqt5-style-plugins
pakiet, powinieneś uzyskać motyw „gtk2” w qt5ctI, zgodnie z dokumentacją qt5ct , nie zapomnij ustawić
QT_QPA_PLATFORMTHEME=qt5ct
w/etc/X11/Xsession.d/56xubuntu-session
i / lub/etc/environment
źródło
qt5ct
.