问题标签 [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 回答
573 浏览

qt - 如何在 QTreeview 中有两个垂直标题?

我希望顶部标题跨越 2 或 3 个底部标题列。有没有办法在 Qt c++ 中这样做?

我正在寻找一个例子。

谢谢你。

0 投票
1 回答
299 浏览

qt - 阻止单个 QModelIndex 被更新

我有一个 QTreeView,其数据随时间变化,每秒在 QAbstractItemModel 中发出一个 dataChanged 信号。QTreeView 中的项目也可以编辑,但是当为某个项目打开编辑器时,编辑器字符串会在我编辑时更新,这很烦人。有什么方法可以防止编辑器使用新值更新?

0 投票
1 回答
2422 浏览

qt - QT:我继承自 QTreeView。我继承自 QStandardItem。我如何设计项目?

我的谷歌技能今天一定让我失望了。

我从 QTreeView 继承来创建一个存储 QStandardItemModel 而不是 QAbstractItemModel 的 TreeView。我还从 QStandardItem 继承来创建一个类来根据需要将我的数据存储在一个项目中。

我已经成功地将派生的 QStandardItem 插入到派生的 QTreeView 的 QStandardItemModel 中。现在的问题是,我不知道如何设计它。我知道 QTreeView 有一个 setStyleSheet(QString) 成员,但我似乎无法让它工作。这可能就像我没有设置正确属性的样式一样简单。任何指针将不胜感激。谢谢。

为清楚起见,这是我的课程定义。

我尝试了以下样式表:

0 投票
2 回答
2991 浏览

qt - PyQt:如何在排序后保持 QTreeView 节点正确展开

我正在为稍后更复杂的项目编写一个使用 QTreeModel 和 QTreeView 的简单测试程序。在这个简单的程序中,我有分组数据,可以收缩或扩展,正如人们在 QTreeView 中所期望的那样。数据也可以按各种数据列排序(QTreeView.setSortingEnabled 为 True)。每个树项都是一个数据列表,所以TreeModel类中实现的排序函数使用了python内置的列表排序:

问题是,每当我更改根的子项的排序时(树只有 2 级深,所以这是唯一的子级),节点不一定像以前那样扩展。如果我在不展开或折叠任何内容的情况下更改排序,则节点会像排序更改之前一样展开。
谁能向我解释我做错了什么?我怀疑这是没有用排序节点正确重新分配 QModelIndex 的问题,但我不确定。

0 投票
2 回答
4313 浏览

python - 右键单击 QTreeView 内的 QHeaderView

我已经编写了具有多列的 QTreeView 的后代。我想创建一个弹出菜单,当用户右键单击列标题时会出现该菜单。为此,我尝试从 QTreeView 捕获信号,但 QTreeView 似乎没有在标题上发出信号。QTreeView.header() 可以。因此,我认为我必须:
1:将 QHeaderView 的信号之一连接到弹出函数 - 我无法找到单击鼠标右键触发的信号 - 我尝试过 sectionClicked、sectionHandleDoubleClicked、sectionDoubleClicked、sectionPressed(对双击功能没有捕捉到一次右键单击 - 但它们确实捕捉到了两次右键单击)

或者,
2:使用我自己的 MousePressEvent 函数编写 QHeaderView 的后代,并将其用于我的标题。到目前为止,我未能成功地将新的头类连接到 QTreeView 后代。我在运行时不断收到分段错误,没有更多解释。

有任何想法吗?

0 投票
2 回答
6607 浏览

qt - 在 QTreeView 中设置粗体行

我在 pyqt 应用程序中有一个 QTreeView 的自定义子类。我试图让用户能够突出显示和“低光”(因为没有更好的术语)行。突出显示的行应具有粗体文本和(可选)不同的背景颜色。有任何想法吗?
我正在考虑将 StyleSheets 作为一种选择,但到目前为止还无法让它发挥作用。如果我设置 QTreeView 的样式表:

我不知道如何手动启用仅将所需行保留在特定状态的“状态”。如果我尝试设置单个项目的样式表:

我得到一个段错误。
我不相信样式表是要走的路,我对所有想法持开放态度。谢谢!

0 投票
8 回答
18588 浏览

qt - 是否可以通过单击项目在 QTreeView 中取消选择?

我希望能够通过单击 QTreeView 中没有项目的一部分来取消选择 QTreeView 中的项目,但我似乎无法找到这样做的方法。我会拦截一个不在项目上的点击,但 QTreeView 没有clicked信号,所以我不知道如何做到这一点。

0 投票
1 回答
1583 浏览

qt - QTreeView 内存消耗

我现在正在测试 QTreeView 功能,我对一件事感到惊讶。似乎 QTreeView 内存消耗取决于项目计数 O_O。这是非常不寻常的,因为这种类型的模型视图容器只跟踪正在显示的项目,其余项目都在模型中。我用一个简单的模型编写了以下代码,该模型不包含任何数据,只报告它有 1000 万个项目。使用 MFC,具有此类模型的 Windows API 或 .NET 树/列表将不占用内存,因为它只会显示 10-20 个可见元素,并且会在滚动/展开项目时请求模型以获取更多信息。但是对于 Qt,这种简单的模型会导致大约 300Mb 的内存消耗。增加项目数量会增加内存消耗。也许有人可以提示我我做错了什么?:)

0 投票
1 回答
1009 浏览

python - PyQt:更改 QTableView 中复选框的对齐方式

我有一个QTableView带复选框,但复选框左对齐,我需要将其居中对齐。我试过,但是“检查”功能有问题:

什么是“检查”功能?如何在 PyQt 中重新实现 C++ 示例?

0 投票
8 回答
18685 浏览

qt - 如何恢复 QTreeView 上次展开的状态?

是)我有的:

  1. QTreeView带有表格数据的类
  2. 和连接QAbstractTableModel模型

问题:如何保存物品的展开状态?有人已经完成了解决方案吗?

PS:我知道,我可以自己做这个代码,但是我没有太多时间,这不是我们项目的主要问题,但我们仍然需要它,因为应用程序包含很多这样的表,并且每次扩展树项目都是恼人的过程......