2012-03-24 6 views
7

Với GTK3 một số lần xem trước (tôi đoán) có một vài nút ở phía dưới có vẻ như là một phần của nó. Cài đặt hệ thống trong Ubuntu sử dụng này, cũng như hộp thoại chọn tập tin cho GTK3 appsNút xem trước của Python GTK3

Example treeview

Đây có phải là một phần của GTK3 hay chỉ là một thùng chứa đặc biệt được thực hiện?

+0

bản sao có thể có của [Các nút được nối kiểu Mac (điều khiển phân đoạn) với Gtk] (http://stackoverflow.com/questions/8277152/mac-style-joined-buttons-segmented-control-with-gtk) – ptomato

+0

Điều này đã được hỏi một vài lần rồi, đây là một số khác: http://stackoverflow.com/questions/8617788/how-to-change-the-style-for-buttons-in-gtk – ptomato

Trả lời

7

Trong trường hợp bất cứ ai khác đến đây, các nút là ToolButtons trong một thanh công cụ với "inline-thanh công cụ" lớp

self.listTools=Gtk.Toolbar() 
self.listTools.set_property("icon_size",1) 
context=self.listTools.get_style_context() 
context.add_class("inline-toolbar") 

self.addButton=Gtk.ToolButton() 
self.addButton.set_property("visible",True) 
self.addButton.set_property("can_focus",False) 
self.addButton.set_property("use_action_appearance",False) 
self.addButton.set_property("use_underline",False) 
self.addButton.set_property("icon_name","list-add-symbolic") 
self.listTools.add(self.addButton) 

Tôi không chắc chắn nếu tất cả các thuộc tính nút cụ thể là cần thiết

Tôi đã đóng gói các ảnh tre trên thanh công cụ một ScrolledWindow và cho nó những thuộc tính này

scrolled_window = Gtk.ScrolledWindow() 
scrolled_window.add_with_viewport(self.objectsView) 
scrolled_window.set_property("shadow_type","in") 

Cuối cùng, tôi đã đóng gói ScrolledWindow phía trên Thanh công cụ trong một VBox

0

Nút thêm/xóa/lên/xuống là các điều khiển riêng biệt từ TreeView. Bạn sẽ phải thêm chúng vào giao diện người dùng của mình và tự thực hiện hành vi.