Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何保存gtk树视图(排序顺序和位置)?_Python_List_Sorting_Treeview_Gtk - Fatal编程技术网

Python 如何保存gtk树视图(排序顺序和位置)?

Python 如何保存gtk树视图(排序顺序和位置)?,python,list,sorting,treeview,gtk,Python,List,Sorting,Treeview,Gtk,我有一个程序显示一个gtk Treeview,有5-6列和大量行,因此旁边有一个滚动条 我想确保,如果退出程序并重新启动,关闭前处于最后状态的位置和排序顺序将再次加载 因此: 如何在树状视图中存储选定的项目位置 如何存储已排序的订单 当再次显示treeview时,我如何将它们带回来,以便它能够像关闭程序时一样显示列表 我已经看到了一些关于如何存储所选项目位置的答案,但没有看到如何以相同的方式再次显示它 如果你能给我一些建议,我将不胜感激 恐怕我是用C语言而不是Python语言回答的,因为这是

我有一个程序显示一个gtk Treeview,有5-6列和大量行,因此旁边有一个滚动条

我想确保,如果退出程序并重新启动,关闭前处于最后状态的位置和排序顺序将再次加载

因此:

  • 如何在树状视图中存储选定的项目位置
  • 如何存储已排序的订单
  • 当再次显示treeview时,我如何将它们带回来,以便它能够像关闭程序时一样显示列表
我已经看到了一些关于如何存储所选项目位置的答案,但没有看到如何以相同的方式再次显示它


如果你能给我一些建议,我将不胜感激

恐怕我是用C语言而不是Python语言回答的,因为这是我熟悉的语言。您应该能够很容易地翻译函数名。如果存储路径,则可以使用
gtk\u tree\u view\u get\u cursor
gtk\u tree\u view\u set\u cursor
获取和检索所选行。重新加载数据时,路径应相同。您可以使用
gtk_tree_view_get_columns
g_list_find
查找选定的列。设置光标将滚动窗口,使其可见。这将使视图恢复到保存时的大致状态。如果您想更精确,可以查看
gtk\u scrollable\u get\u vaadjustment
gtk\u scrollable\u get\u hadjustment
来存储排序顺序,您可以使用
gtk\u tree\u sortable\u get\u sort\u column\u id
并使用
gtk\u tree\u sortable\u set\u sort\u column\u id>设置排序顺序

我希望这能让你开始,花点时间熟悉一下是很值得的。一开始可能会有点让人不知所措,但从长远来看,这是值得努力的