在树视图 gtkmm 中为行设置标题

Posted

技术标签:

【中文标题】在树视图 gtkmm 中为行设置标题【英文标题】:Set headers for rows in a treeview gtkmm 【发布时间】:2017-05-20 20:12:16 【问题描述】:

我正在重建一个我已经在 Qt 中完成的项目,但使用 gktmm 只是为了好玩。 这些项目包含几个表格,随着时间的推移,这些表格会获得越来越多的列和行。最终开始需要水平滚动,我希望我的 gtk::TreeView 在其行上有标题,因此它们在水平和垂直滚动时始终可见

这是新项目(左)与旧项目(右) 正如您所看到的,旧的在行上有标题(我也忘了把它们放在列上,我知道),这就是我想要实现的。 (以及着色) 如果我只是设置第一列并在那里写下名称,水平滚动时它会消失

【问题讨论】:

【参考方案1】:

我不认为这实际上是在gtk::TreeView 中实现的。要获得该功能,您可能必须覆盖滚动方法并隐藏/显示列,而不是滚动视图。

Gnumeric 使用来自goffice 库的GocCanvas 小部件来达到预期的效果,但我还没有看到 C++ 绑定。

【讨论】:

【参考方案2】:

嗯,到目前为止,我发现的最接近的工作解决方案是在原始树视图之外创建一个侧树视图并将标题填充到其中。 这将需要以下内容

连接两个滚动窗口,使它们同时垂直滚动 连接行,这样每当我在任一树视图上展开一行时,相应的行就会在另一个树视图上展开 只要在任一树视图上选择了一行,就会在另一个树视图上选择相应的行

我真的很希望这是可能的,但我刚刚想通了,我还没有尝试连接

【讨论】:

查看您生成的将两者链接在一起的代码会非常有用。 我没有时间尝试更多。我找到了一份新工作,这主要是一种爱好

以上是关于在树视图 gtkmm 中为行设置标题的主要内容,如果未能解决你的问题,请参考以下文章

如何在android gridview中为行设置不同的列

Swift 在 UITableView 中为容器视图设置约束

GTKmm - 无法将固定大小设置为 Gtk::Scale 小部件

在 Django 中为特定视图设置用户权限

如何在 iOS 中为表格视图和滚动视图设置偏移量,以便两者一起滚动

在 SwiftUI 中为 UITextView 设置初始视图偏移量