Ubuntu 17.04에서 Qt5 응용 프로그램이 GTK 테마를 사용하도록하려면 어떻게해야합니까?


9

Ubuntu 17.04로 업데이트 한 이후 Qt Creator와 같은 Qt5 응용 프로그램은 더 이상 GTK 테마를 사용하지 않습니다. qt5ct 사용하여 이것을 변경하려고 시도했지만 패키지 가 설치되어 있어도 FusionWindows 스타일 만 사용할 수 있습니다 qt5-gtk-platformtheme.

이 문제를 어떻게 해결할 수 있습니까?

편집 : 나는 Unity를 사용하고 있습니다.

답변:


7

Qt5 애플리케이션의 모양과 느낌은 플랫폼 테마와 스타일에 따라 결정됩니다. 플랫폼 테마는 아이콘, 글꼴 등을 담당하며 스타일은 위젯이 렌더링되는 방식을 제어합니다. Qt Creator와 같은 응용 프로그램이 GTK3 플랫폼 테마를 표준으로 사용하고 있다고 생각합니다.

Qt5.7 이후로 문제가 발생했습니다. 이 릴리스에서는 GTK2 플랫폼 테마 및 스타일이 제거되고 GTK3 플랫폼 테마로 대체되었습니다. 나는 최근 Qt 개발자들과 토론을 해왔으며 플랫폼 테마를 보완하는 GTK3 스타일이 없으며 현재는 이것을 구현할 계획이 없다. 따라서 우분투에서 GTK3 플랫폼 테마를 사용하는 기본 스타일은 "Fusion"입니다.

다음과 같이 기본 스타일을 추가하는 몇 가지 방법이 있습니다.

  1. 구 GTK2 플랫폼 테마와 스타일은 여기에서qtstyleplugins 다운로드 할 수 있는 별도의 패키지 로 제공 됩니다 . 불행히도 GTK2 스타일은 GTK3 플랫폼 테마와 호환되지 않습니다. GTK2 스타일을 사용하려면 GTK2 플랫폼 테마를 사용해야합니다. 이것은 우분투 17.04에서 대화 상자 등이 기본적으로 보이지 않음을 의미합니다. 그러나 "Fusion"보다 선호 할 수 있습니다.
  2. 사용중인 데스크탑 환경에 대해서는 언급하지 않았습니다. 라는 타사 플랫폼 테마와 스타일이 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\.


자세한 설명을 주셔서 감사합니다. 글꼴 렌더링이 그렇게 끔찍하지 않으면 Fusion을별로 신경 쓰지 않을 것입니다. 이것에 대해 어딘가에 열린 버그가 있습니까?
Philipp Ludwig

시스템에서 본 글꼴이 제대로 표시되지 않았습니다. 이 스크린 샷이 있습니까?
gsxruk

여기에 스크린 샷을 업로드했습니다 : imgur.com/a/u34W6 왼쪽은 Qt Creator이고, 오른쪽은 그놈 터미널의 vim 세션입니다. 나는 그것이 매우 미묘하다는 것에 동의하지만 Qt 글꼴은 나에게 흐릿하게 느껴집니다. 두 응용 프로그램 모두 Ubuntu Mono 12로 설정되어 있습니다.
Philipp Ludwig

무슨 말인지 알지만 미묘한 점에 동의합니다. 죄송합니다, 그 제안에 대해 무엇을 제안해야할지 모르겠습니다.
gsxruk

당신이 관심이 있다면 : funtoo에 대해 무한한 결과가 나아졌지 만이 패치 세트가 더 이상 제대로 유지되지 않는다는 것을 알고 있습니다. 어쨌든 글꼴은 IPS 패널이있는 랩톱에서 훨씬 좋아 보이므로 데스크탑에서 7 살짜리 디스플레이를 업그레이드해야 할 수도 있습니다. 당신의 도움을 주셔서 감사합니다!
Philipp Ludwig

5

패키지 qt5ct를 설치 해야하는 것 외에도 qt5-style-pluginsqt5ct에서 'gtk2'테마를 가져와야합니다.

sudo apt-get install qt5-style-plugins

그리고, 따라 qt5ct 문서 , 설정하는 것을 잊지 마세요 QT_QPA_PLATFORMTHEME=qt5ct/etc/X11/Xsession.d/56xubuntu-session및 / 또는/etc/environment


답변은 설치하지 않고 나를 위해 작동합니다 qt5ct.
DMT

예, qt5 스타일 플러그인 만 설치하면 (즉, qt5ct 미포함) gtk2로 qt5.7 +를 스타일링하는 데 적합합니다. qt5ct는 gtk2 이외의 qt5.7 +에 다른 스타일을 사용하려는 경우에만 필요합니다
Gyll

btw, 내 바탕 화면의 불일치에 질려서 피곤해, 나는 내 자신의 테마를 모아서 끝났다. 불일치가 당신의 견과를 몰아 내는지
Gyll
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.