冻结Treeview pygtk中的第一列

时间:2016-04-05 13:20:33

标签: python gtk pygtk gtktreeview

我正在使用 pygtk 应用程序,并在 ScrolledWindow 中添加了 Treeview 。现在我想冻结第一列(修复列位置),这样当水平滚动 Treeview 时,列位置是固定的并且仍然可见(因为它'在excel中为行列完成。)

那么我如何冻结 pygtk 中的 Treeview 列?

1 个答案:

答案 0 :(得分:0)

我能够得到的最接近的是一点点kludge。我使用的是Perl,而不是Python,所以我只是描述我的技术。

连接到树形视图的滚动事件信号并观察方向=左/右(或平滑,其中get_scroll_deltas()为X轴返回非零值)。对于垂直滚动,请务必返回FALSE,以便不受影响。然后在固定的列之后显示/隐藏列并返回TRUE。

例如:向右滚动时,隐藏第2列,然后隐藏第3列等。向左滚动时,显示隐藏的最高数字列。

有一些缺点:

  • 它不如您所寻找的那样顺畅(列不能被部分隐藏)。
  • 仅在倾斜鼠标滚轮时才能使用滚动条。并非所有鼠标都有可倾斜的轮子。