ứng dụng biểu tượng chứng khoán tùy chỉnh không hoạt động trong menu bảng điều khiển trên cùng của ubfox (hay còn gọi là appmenu) (Menu Menus có biểu tượng hình chữ nhật ON)


2

Gần đây tôi nhận thấy rằng trong sự thống nhất của Ubuntu, menu trên cùng của ứng dụng của tôi không hiển thị các biểu tượng (tùy chỉnh) mà tôi đã thêm vào chứng khoán gtk, mà chỉ các biểu tượng chứng khoán gtk cơ bản.

Điều này chỉ xảy ra vì menu trên cùng được hiển thị trong bảng thống nhất trên cùng (appmenu) chứ không phải trong cửa sổ ứng dụng. Thay cho các biểu tượng tùy chỉnh chính xác, tôi thấy "gtk-thiếu-hình ảnh". Trên thanh công cụ ứng dụng của tôi và các menu khác, các biểu tượng được hiển thị đúng, vấn đề chỉ nằm ở menu trên cùng.

Điều này xảy ra hoặc với pygtk2 (ví dụ: http://www.giuspen.com/cherrytree/ ) và hướng nội của gobject (ví dụ: http://www.giuspen.com/nautilus-pyextensions/ ). Tôi sử dụng trình quản lý gtk ui sau khi tích hợp các biểu tượng chứng khoán theo cách này:

factory = gtk.IconFactory()
pixbuf = gtk.gdk.pixbuf_new_from_file(filepath)
iconset = gtk.IconSet(pixbuf)
factory.add(stock_name, iconset)
factory.add_default()

Nếu ai giải quyết được vấn đề này xin hãy giúp đỡ. Chúc mừng, Giuseppe.


1
Tôi nhận thấy rằng inkscape có cùng một vấn đề
giuspen

1
Tôi đã chỉnh sửa từ unity-2d thành unity kể từ khi tôi nhận thấy vấn đề tồn tại ở đó, tôi có phải tạo một câu hỏi mới hay điều này là đủ?
giuspen

Câu trả lời:


4

Khung AppIndicator cần biết về các biểu tượng. Để làm điều này, họ cần phải có trong một thư mục chủ đề, hoặc một phần của chủ đề tùy chỉnh cho ứng dụng. Bạn có thể thêm một thư mục chủ đề bằng cách sử dụng app_indicator_set_icon_theme_path(). Điều này cho phép dịch vụ chỉ báo ứng dụng biết nơi tìm biểu tượng tùy chỉnh của bạn. Bạn cũng có thể cài đặt các biểu tượng trong chủ đề biểu tượng mặc định được đặt trong /usr/share/themes/hicolor.

Cuối cùng, là một hack tổng, bạn có thể tạo chúng một cách nhanh chóng. Đây là những gì được thực hiện bởi indicator-multiload. Nó không được khuyến khích, vì vậy tôi sẽ không liên kết với nó, nhưng nếu đó là thứ bạn cần xem ở đó.


Cảm ơn. Tôi đã tự hỏi về điều này, vì dường như tôi "đôi khi" các biểu tượng danh dự được tải rõ ràng từ các vị trí tuyệt đối khác mà không có vần điệu hoặc lý do khi nó không còn nhớ biểu tượng đó nữa.
RobotHumans

OK Tôi có thể sử dụng set_icon_theme_path () cho appindicator nhưng còn appmenu (menu trên cùng được nhúng trong bảng trên cùng khi ứng dụng được tối đa hóa)
giuspen

Cho rằng bạn cần thêm một thư mục chủ đề trong GTK +. Điều đó đã được thực hiện với gtk_icon_theme_append_search_path ().
Ted Gould

Tôi đã tạo gtk.icon_theme_get_default (). Append_search_path () nhưng nó không hoạt động. Các biểu tượng chỉ hiển thị sau khi tôi kích hoạt appindicator và do đó, đặt appindicator.set_icon_theme_path ()
giuspen

Sau khi tôi đặt trạng thái appindicator thành set_status (appindicator.STATUS_PASSIVE), các biểu tượng sẽ không hiển thị nữa trong appmenu bảng thống nhất. Giải pháp duy nhất là vô hiệu hóa hoàn toàn appmenu bằng os.envir ['UBUNTU_MENUPROXY'] = '0' và giữ menu bên trong ứng dụng của tôi.
giuspen
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.