问题标签 [qtreeview]

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 回答
695 浏览

c++ - 为什么 QTreeView 不显示数据?

我遇到了QTreeView的问题。当我运行此代码时ui->treeView不显示数据:

如何解决这个问题?

0 投票
2 回答
2916 浏览

python - PyQt:删除 QTreeView 列

我将 QTreeView 与 QFileSystemModel 一起使用。它显示了我不需要的大小、类型、修改日期等列。如何从视图中删除它们?removeColumn我在模型或视图中找不到任何东西。

0 投票
2 回答
1221 浏览

qt - QTreeView 中的一种文件格式

是否可以只设置一种对用户可见的文件格式?我在文档中搜索它,但我找不到它......如果没有,您建议使用哪个其他小部件?

0 投票
1 回答
570 浏览

c++ - QTreeView 切换标签位置

我有一个 qt 对象 QTreeView,我想切换标签位置。基本上我有一个填充的 TreeView。和功能

返回0第一列,让我们说50第二列。我想切换它们,以便以不同的顺序显示,以便第一列和第二列columnViewportPosition返回。我怎么做?500

0 投票
2 回答
28943 浏览

c++ - 以编程方式在 QTreeView 中选择一行

我有一个以 QFileSystemModel 作为模型的 QTreeView。

QTreeView 将 SelectionBehavior 设置为 SelectRows。

在我的代码中,我读取了一个要选择的数据集,然后通过以下方式选择它们:

这会选择一个单元格,而不是行。.

添加了一个愚蠢的解决方法,但宁愿以正确的方式解决这个问题。

或者那是^^唯一的方法吗?

0 投票
4 回答
3315 浏览

qt4 - 如何有效地扩展 QTreeView 的整个子树?

编辑:事实证明,根本性能问题是附加到扩展()信号的大小匹配函数,所以我将接受第一个答案并删除这个问题,因为它具有误导性。

注意:我问这个问题是为了提供答案(也许会得到更好的答案)。解决方案并不直观。

Qt 的 MacOS 构建可能有一种方法让用户扩展整个 QTreeView 子树(它有一个开放的错误),但非 MacOS 构建绝对没有。我正在尝试实现“在项目装饰上的 shift-click 扩展整个子树”的行为。

有两个问题。两者中较容易的是检测装饰上的 shift-click。我通过拦截展开/折叠的信号来做到这一点;他们检查 mousePressEvent 设置的一些“全局”状态:

这有点难看,但效果很好。

更难的问题是实现 _recursive_set_expanded(view, root, state)。递归崩溃非常快。但是,在索引的所有后代上调用 view.setExpanded(True) 的明显实现非常慢——大约 100 个索引需要几秒钟。问题不在于昂贵的数据模型,因为 view.expandAll() 非常快。

一些资料显示,expandAll() 的工作量明显少于 expand()。但是,Qt API 没有公开 expandSubtree() 方法。如果不深入研究私有实现,如何才能快速做到这一点?

0 投票
3 回答
4722 浏览

qt - 选择父母的复选框时如何在QTreeView中选择孩子的项目复选框

当我选择/取消选择他们父母的项目 QCheckBox 时,我想选择/取消选择所有孩子的项目 QCheckBox。

我从 QTreeView 继承并检测何时选择 QCheckBox 然后我调用函数来执行选择/取消选择过程。

这是我的代码:

当我选择/取消选择父复选框(未选择/取消选择子子项)时,代码可能不起作用。

提前致谢。

0 投票
1 回答
2177 浏览

sql - QTreeView 和 QSqlQueryModel -- 根据需要从 sql 数据库中加载子项

我有以下问题。

我正在尝试为我的 QTreeView 实现一个模型,该模型将从 sql 表中动态加载数据。

表如下所示:

id_parent 包含父记录的 id - 因此它们形成一个结构。

我希望我的模型仅在需要时才从该表中加载数据。换句话说,我不想将完整的结构加载到内存中,而是不想只读取用户打开的那些节点的子节点。

QSqlQueryModel 和 QSqlTableModel 似乎只适用于平面表。

我认为解决此问题的一种方法是实现自定义 QAbastractItemModel 类并在内部为每个打开的节点(包括顶级不可见父节点)存储单独的 QSqlQueryModel 实例。然后重写每个方法并将请求转发到适当的模型。

也许有一些更简单的解决方案?:-)

感谢帮助。

0 投票
2 回答
921 浏览

qt - 在 QListView 中显示数据的问题

再会!

截屏

有 QListView 和 QTreeView 类的实例。这两个实例都从模型 (QStandardItemModel) 加载数据。QTreeView 显示职位(例如:主管、经理、开发人员等)。点击职位名称,显示的员工名单。

QListView 只显示员工的职位。

问题:如何在 QListView 中显示员工姓名的完整列表而不显示他们的职位?我需要重写哪些方法?在这种情况下你有什么建议?

PS谢谢!

0 投票
2 回答
3779 浏览

qt - QTreeView 仅显示父目录,而不是父目录及其所有同级目录

我正在尝试让 QTreeView(使用底层 QFileSystemModel)来显示目录树。如果我将 RootPath 设置为父目录,那么我会看到所有子目录,但看不到父目录。如果我将 RootPath 设置为父目录的父目录,那么我会看到父目录及其所有兄弟目录。有没有办法让它显示没有兄弟姐妹的父母和所有孩子?

谢谢