¿Cómo puedo obtener aplicaciones Qt5 para usar el tema GTK en Ubuntu 17.04?
9
Desde que actualicé a Ubuntu 17.04, las aplicaciones Qt5 (como Qt Creator) ya no usarán el tema GTK. Traté de cambiar esto usando qt5ct , pero solo tiene los estilos Fusion y Windows disponibles, a pesar de que el paquete qt5-gtk-platformthemeestá instalado.
La apariencia de las aplicaciones Qt5 está determinada por los temas y estilos de la plataforma. El tema de la plataforma es responsable de los iconos, las fuentes, etc. y el estilo controla cómo se representan los widgets. Creo que encontrará que su aplicación, como Qt Creator, está utilizando el tema de la plataforma GTK3 como estándar.
El problema ha ocurrido desde Qt5.7. En esta versión, el tema y el estilo de la plataforma GTK2 se eliminaron y se reemplazaron con el tema de la plataforma GTK3. Recientemente he estado discutiendo con los desarrolladores de Qt y parece que no hay un estilo GTK3 para complementar el tema de la plataforma y actualmente no hay planes para implementar esto en el futuro. Por lo tanto, en Ubuntu, el estilo predeterminado es "Fusion" usando el tema de la plataforma GTK3.
Hay un par de métodos para agregar un estilo nativo de la siguiente manera:
El antiguo tema y estilo de la plataforma GTK2 todavía están disponibles en un paquete separado llamado qtstylepluginsque se puede descargar aquí . Desafortunadamente, el estilo GTK2 no es compatible con el tema de la plataforma GTK3. Si desea utilizar el estilo GTK2, deberá utilizar el tema de la plataforma GTK2. Esto significará que sus diálogos, etc., no parecen nativos en Ubuntu 17.04. Sin embargo, puede preferirlo a "Fusion".
No indicó qué entorno de escritorio está utilizando. Hay un tema y estilo de plataforma de terceros llamado QGnomePlatformdisponible aquí y adwaita-qtdisponible aquí . Esto proporciona un aspecto completamente nativo al usar Ubuntu Gnome.
Para Qt Creator, no estoy 100% seguro de si utiliza ubicaciones globales de tema / estilo. Puede que tenga que instalarlos en {Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\platformthemes\y {Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\styles\.
Gracias por la explicación detallada. No me importaría tanto Fusion si la representación de la fuente no fuera tan horrible. ¿Hay algún error abierto en alguna parte sobre esto?
Philipp Ludwig
Las fuentes no parecen pobres por lo que he visto en mi sistema. ¿Tienes una captura de pantalla de esto?
gsxruk
He subido una captura de pantalla aquí: imgur.com/a/u34W6 Izquierda es Qt Creator, derecha es una sesión vim en gnome-terminal. Estoy de acuerdo en que es muy sutil, pero las fuentes Qt simplemente me parecen borrosas (¿o más borrosas?). Ambas aplicaciones están configuradas en Ubuntu Mono 12.
Philipp Ludwig
Entiendo lo que quieres decir, pero estoy de acuerdo en que es sutil. Lo siento, no sé qué sugerir sobre eso.
gsxruk
En caso de que esté interesado: he tenido mejores resultados con infinality en funtoo, pero que yo sepa, este parche ya no se mantiene correctamente. De todos modos, las fuentes se ven mucho mejor en mi computadora portátil, que tiene un panel IPS, por lo que tal vez solo necesito actualizar mi pantalla de 7 años en mi escritorio. ¡Gracias por tu ayuda!
Philipp Ludwig
5
Además de qt5ctque también necesita instalar el qt5-style-pluginspaquete, debería obtener el tema 'gtk2' en qt5ct
sudo apt-get install qt5-style-plugins
Y, según la documentación qt5ct , no se olvide de establecer QT_QPA_PLATFORMTHEME=qt5cten /etc/X11/Xsession.d/56xubuntu-sessiony / o/etc/environment
Esta respuesta funciona para mí, sin instalar qt5ct.
DMT
Sí, instalar solo plugins de estilo qt5 (es decir, sin qt5ct) funciona bien para diseñar qt5.7 + con gtk2. qt5ct solo es necesario si desea utilizar también otros estilos para qt5.7 + que gtk2
Gyll
Por cierto, estando enfermo y cansado de inconsistencias en mi escritorio, terminé armando un tema propio, es posible que desee comprobarlo si las inconsistencias enloquecen: xfce-evolution.sourceforge.net
Además de
qt5ct
que también necesita instalar elqt5-style-plugins
paquete, debería obtener el tema 'gtk2' en qt5ctY, según la documentación qt5ct , no se olvide de establecer
QT_QPA_PLATFORMTHEME=qt5ct
en/etc/X11/Xsession.d/56xubuntu-session
y / o/etc/environment
fuente
qt5ct
.