我想实现一个处理大量行的GUI,我需要在Linux中使用GTK
。
我开始查看GTKTreeView
列表,但我不认为直接向该窗口小部件添加数百万行将有助于拥有一个不会降低应用程序速度的GUI。
你知道这个问题是否已经存在GTK
窗口小部件,还是我必须处理必须显示这些行的窗口框架?最终我会使用GtkDrawingArea
直接编写数据(基本上是编写一个新的小部件)。
关于任何GTK
主题或项目的任何建议我都可以作为我研究的起点?
答案 0 :(得分:3)
根据评论中的建议,您可以使用Cell Data Func,并在contro下获取显示的数据。但我有另一个想法:数百万行远远超过人类用户可以看到和理解的任何数量的信息。因此,更好,更实用和用户友好的解决方案是以用户可以更轻松地在其中导航的方式显示数据。
想象一下,打开一个巨大的层次结构,向下滚动,忘记你打开的顶级项目。
可能解决方案的示例:拥有一个允许选择某个过滤器或类别的组合框,这可以将数据量减少到合理的数量,用户可以更轻松地导航并在必要时制作心理模型。
注意:据我所知,GtkTreeView不支持同时排序/过滤和拖放,所以如果你想同时使用这两种功能,我建议你使用现有的拖放功能功能(手动实现非常复杂)并实现自己的排序/过滤。