0
我有一個簡單的iconview小部件,可以從商店中讀取pixbuf。我想縮放pixbufs,所以我用iconview的set_cell_data_func。但有一個問題。它調用它只是9次爲一排,運行更慢,甚至flowbox爲什麼gtk3 iconview調用一行9次映射函數?
self.iconmodel = Gtk.ListStore(GdkPixbuf.Pixbuf)
self.icon = Gtk.IconView()
self.icon.set_model(self.iconmodel)
self.icon.set_pixbuf_column(0)
self.icon.set_cell_data_func(self.icon.get_cells()[0], self.custom_cell_function, None)
def custom_cell_function(self, cell_layout, cell, tree_model, tree_iter, data):
p = tree_model[tree_iter][0]
p = p.scale_simple(p.get_width()*0.33, p.get_height()*0.33, 1)
cell.set_property('pixbuf', p)
在圖片中有127的pixbuf在存儲和調用FUNC 989次:) Flowbox似乎比圖標視圖更適合但隨後拇指必須是小部件而不是單元格渲染器。
你們有什麼想法可以減少它嗎?謝謝。 exmp
我想在GNOME Files's圖標大小規模的改變pixbuf的大小動態等。不想在商店中放置每個縮放尺寸 – user3623988