Làm cách nào tôi có thể chủ đề ứng dụng Qt của mình giống với ứng dụng được viết bằng Gtk?


15

Mark Shuttleworth gần đây đã viết blog về quyết định đưa các thư viện Qt vào bản phát hành 11.10, với sự theo dõi từ Jono Bacon . Điều khiến tôi tắt các ứng dụng Qt là chúng không kết hợp rất tốt với chủ đề dựa trên Gtk của Ubuntu. Gần đây tôi đã đọc một bài viết của Ars Technica có đề cập rằng, với một chút nỗ lực, các ứng dụng Qt có thể được tạo ra để giống với các ứng dụng Gtk.

Có tài liệu nào giúp tôi làm việc này không, và nếu không, có ai ít nhất có ý tưởng nào về việc người ta sẽ làm việc này không?

Câu trả lời:


16

Lưu ý: điều này hữu ích với người dùng máy tính để bàn, không phải cho các nhà phát triển sử dụng Qt.

sudo apt-get install qt4-qtconfig, sau đó chuyển đến cài đặt Hệ thống / Tùy chọn / Qt 4 và chọn kiểu GTK trong hộp tổ hợp đầu tiên:

Hộp thoại cấu hình Qt


2
điều này đã được mặc định kể từ khi sáng suốt.
Lincity

1
Có cách nào để làm điều này hoạt động với GTK3 không?
Mandy

1
Điều này thật tuyệt vời ngoại trừ việc không có gì thay đổi các biểu tượng mà ứng dụng qt sử dụng. Ví dụ, cá heo sử dụng một số biểu tượng thực sự xấu xí chạy trên sự thống nhất của Ubuntu
Joshua Robison

3

Ứng dụng Qt không tuân theo các cài đặt gợi ý phông chữ được đặt bởi gnome-appearance-properties. Bạn cần thêm một mục rõ ràng vào $HOME/.fonts.confví dụ

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
 <match target="font" >
  <edit mode="assign" name="rgba" >
   <const>rgb</const>
  </edit>
 </match>
 <match target="font" >
  <edit mode="assign" name="hinting" >
   <bool>true</bool>
  </edit>
 </match>
 <match target="font" >
  <edit mode="assign" name="hintstyle" >
   <const>hintfull</const>
  </edit>
 </match>
</fontconfig>

1

Từ bài viết SU của nagul /superuser/37444/how-can-i-make-kde-and-other-non-gnome-apps-inherit-the-ubfox-theme - trích dẫn trực tiếp:

Kiểm tra QGtkStyle , một dự án để tạo lớp GTK + cho các ứng dụng dựa trên Qt (như KDE) chạy trên máy tính để bàn dựa trên GTK2 (như Gnome).

Có nhiều ý tưởng và kịch bản khác trong cuộc thảo luận về chủ đề này tại Ubuntu Brainstorm: Idea # 1744: Các chủ đề Gnome sẽ ảnh hưởng đến các chủ đề Qt , và nhiều trong số chúng trong cuộc thảo luận này Ý tưởng # 1714: Tích hợp Gnome QT (và nhiều ý tưởng trùng lặp được thu thập theo câu hỏi).

Một trong những nỗ lực đáng chú ý là UniformUI , cố gắng tự động hóa cấu hình cài đặt Qt để phù hợp với kiểu Gtk + hiện tại, một phần sử dụng QtCurveQGtkStyle để đạt được điều này.

Kết quả thứ tư của google cho "skin qt để khớp với gtk"


Dường như qgtkstylekhông còn khả dụng trên liên kết bạn cung cấp. Và khi tôi tìm kiếm nó, tôi không thể tìm thấy nó ở bất cứ đâu.
71GA

@ 71GA Xem điều này: code.google.com/p/qgtkstyle
RobotHumans

0

Điều này thực hiện công việc, trong Qt 5 và Gtk + 3:

export QT_STYLE_OVERRIDE=gtk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.