PythonGTK+3:通过单击列对树视图进行排序

Python GTK +3: Sorting a treeview by clicking on column(PythonGTK+3:通过单击列对树视图进行排序)
本文介绍了PythonGTK+3:通过单击列对树视图进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望能够通过单击列来按列对树视图进行排序。我只是引用文档中的流行示例作为参考(https://python-gtk-3-tutorial.readthedocs.io/en/latest/treeview.html):
        self.treeview = Gtk.TreeView.new_with_model(self.filter)
        for i, column_title in enumerate(["one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve"]):
            renderer = Gtk.CellRendererText()
            column = Gtk.TreeViewColumn(column_title, renderer, text=i)
            self.treeview.append_column(column)
            column.set_sort_column_id(i)

除非我收到错误:

(test.py:26081):gtk-Critical**:12:35:03.856:gtk_tree_sortable_get_sortable_Column_id:断言‘gtk_is_tree_sortable(Sortable)’失败

(test.py:26081):gtk-关键**:12:35:03.856:gtk_TREE_SOLTABLE_HAS_DEFAULT_SORT_FUNC:断言‘GTK_IS_TREE_SOLTABLE(SOLTABLE)’失败

(test.py:26081):gtk-Critical**:12:35:03.856:gtk_tree_sortable_set_ort_Column_id:断言‘gtk_is_tree_sortable(Sortable)’失败

推荐答案

在this post的帮助下,我想出了一个方法。

编辑以下行:

self.treeview = Gtk.TreeView.new_with_model(self.filter)

self.treeview = Gtk.TreeView.new_with_model(Gtk.TreeModelSort(self.filter))

并且应该可以工作。

这篇关于PythonGTK+3:通过单击列对树视图进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)