Gtk TreeView (GTK3의 Python 바인딩) 중 하나의 열에 파일을로드하거나 색상을 표시하는 데 문제가 있습니다. 예를 들어 QGIS에서 가져온 첫 번째 행에는 아이콘이 표시되고 두 번째 행에는 파란색 원이 표시됩니다. 색상은 레이어 속성에서 가져옵니다 :Gtk TreeView 트리의 아이콘 또는 색상 표시
내 코드는 다음과 같이 보이지만 같은 디렉토리에 icon.png 파일을로드하지 않습니다
#!/usr/bin/python3
from gi.repository import Gtk, Gdk, GdkPixbuf
class MyWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self)
self.set_default_size(200, 200)
self.liststore = Gtk.ListStore(GdkPixbuf.Pixbuf, str)
self.treeview = Gtk.TreeView(model=self.liststore)
symbol1 = GdkPixbuf.Pixbuf.new_from_file("icon.png")
self.liststore.append([symbol1, "This is a symbol1"])
symbol2 = Gtk.IconTheme.get_default().load_icon("gtk-cut", 64, 0)
self.liststore.append([symbol2, "This is symbol2"])
px_renderer = Gtk.CellRendererPixbuf()
px_column = Gtk.TreeViewColumn("Icon", px_renderer)
self.treeview.append_column(px_column)
str_renderer = Gtk.CellRendererText()
str_column = Gtk.TreeViewColumn("Name", str_renderer, text=1)
self.treeview.append_column(str_column)
self.add(self.treeview)
win = MyWindow()
win.connect("delete-event", Gtk.main_quit)
win.show_all()
Gtk.main()
이 GTK3의 pixbuf에 대한 문서입니다 여기 :
PyGTK에 대한 17,451,515,이전 예제는 여기에 있습니다,하지만 뭔가 정말이 처리하는 방법으로 변경되었습니다
- http://faq.pygtk.org/index.py?file=faq13.006.htp&req=show
- http://www.daa.com.au/pipermail/pygtk/2003-August/005644.html
이 예제를 이용해 주셔서 감사합니다. 나는 이제 내 실수를 알아 냈다. – tobias47n9e
감사합니다. – Mohsen