问题标签 [gtktreeview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2396 浏览

python - 突出显示行时设置 cellrenderertext 前景色

当我有 时gtk.CellRendererText,我可以将它的foreground颜色与树存储的列之一关联,并将foreground-set属性设置为 True,以更改该列中文本的颜色。However, when the row with the colored column is selected, its color disappears, and is the same as any selected cell's color. 选中后如何更改颜色?

0 投票
1 回答
2752 浏览

python - 在信号期间在 GtkTreeView 中获取新选择

我想检测何时选择我的gtk.TreeView更改,并在更改时调用带有此信息的函数。到目前为止,我发现这样做的唯一方法是附加到所有这些信号:

但是,我从回调中获得的选择似乎是“延迟的”。也就是说,它显示上一个回调完成后的选择。例如,如果我不断地按住 CTRL+单击一行,当该行从取消选中变为选中时,foo 没有被选中,而当该行从选中变为取消选中时,它被选中。但是,如果我get_selection().get_selected()稍后再打电话,我会得到正确的选择。知道如何处理这个吗?

0 投票
1 回答
1421 浏览

python - 使用 TreeView 后从 .get_model() 和 .get_path() 获取原始行号

所以我有这个 TreeView/TreeStore,我用列表中的数据填充它。我的应用程序仅使用上述列表作为参考数据。TreeStore 只是为显示而构建的。并且可以通过倾斜列标题来使用 TreeView。因为.set_sort_column_id()用于每列的初始化。

问题是,以下代码总是返回显示中单击的行号:

它应该这样做。只要显示原始的未排序列表,这对我来说就很好。使用 TreeView(和 TreeStore?)后,显示的行号 ( .get_path) 不再对应于我的原始数据存储中的行号。

我怎样才能映射这个?或者我怎样才能找出哪个选定的路径号对应于最初传递的 TreeView 列表中的哪个条目?

(当然,我可以在 TreeStore 中插入一个假列来保留我原来的行号。但是必须有某种原生方式来实现它?)

0 投票
1 回答
265 浏览

python - 为什么我的 GtkTreeView 排序函数会收到一行 None ?

我已经设置了gtk.TreeView一个gtk.TreeStore。一列包含格式化的美元金额,我已按该列设置排序如下:

这很好用,除了有时,当我追加一行时,我得到:

我做了更多的打印输出,似乎当我插入一行时,其中一个model[i1][x]model[i2][x]任何 x 将是无。我确定我没有插入包含None元素的行。那么会发生什么?

0 投票
1 回答
1618 浏览

python - PyGTK - 向 gtk.TreeStore 添加行

在此处遵循官方教程后:教程

我仍然在添加行/创建 TreeIter 对象时遇到问题。这是我的代码的样子:

0 投票
2 回答
1075 浏览

python - gtk.treeviewcolumn 未排序

我已经得到了一个可排序的树视图工作。单击列使其按升序排序,再次单击使其按降序排序。但是,如果我第三次单击列标题,它会进入某种“未排序”状态,而不是返回到升序状态。我将一个函数连接到列的clicked信号,并打印出列的get_sort_order(),并且对于每次单击,我得到SORT_ASCENDING升序、SORT_DESCENDING降序和SORT_DESCENDING“未排序”状态。我的树视图构造是这样的:

永远不想处于这种“未分类”的状态。我希望它按升序或降序排序。如何摆脱“未分类”状态?

0 投票
2 回答
594 浏览

user-interface - 将 gtk.TreeView 列添加到大小组

我想将两个树视图相互堆叠并对齐列。我认为做到这一点的方法是使用gtk.SizeGroup某种方式。但是,gtk.TreeViewColumn不是小部件......我该怎么做?

0 投票
1 回答
936 浏览

python - 检测 gtk.treeview 中的列何时调整大小

我可以捕捉到什么信号来检测 a 中的列何时更改大小gtk.TreeView?我似乎无法在文档中找到它。

0 投票
1 回答
254 浏览

python - 获取自动调整大小的 TreeViewColumn 的宽度

有没有办法获得宽度(以像素为单位),gtk.TreeViewColumn如果尺寸模式设置为gtk.TREE_VIEW_COLUMN_AUTOSIZE,即使它是当前的gtk.TREE_VIEW_COLUMN_FIXED

0 投票
2 回答
706 浏览

drag-and-drop - 防止拖放时 Treeview 选择丢失

我有一个gtk.Treeview设置作为拖动源:

TreeSelection设置为SELECT_MULTIPLE.

但是每次我尝试拖动多行选择时,光标都会跳转到当前鼠标位置,将选择重置为当前行。即使鼠标位于选定行之一的上方。它仅在我按住ShiftCtrl按钮时才有效。

到底是怎么回事?

编辑1:

我已经建立了一个简单的树视图来排除我的代码中的任何错误,它做同样的事情。

编辑2:

我找到了一个可以满足我要求的代码片段。它来自 quod libet 来源,称为MultiDragTreeView.