问题标签 [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.
c++ - 可以从委托访问 QTreeview 的选择模型吗?
我在 QTreeView 中显示模型。显示的数据由文本组成。我试图实现的行为是在未选择的行中仅显示一行文本,并在所选行中显示所有行(无论是一行还是多行)。
我正在考虑重新实现 QStyledItemDelegate 的displayText方法,但它提供的唯一信息是数据和语言环境。我需要访问视图的 QItemSelectionModel或其他东西来确定当前请求的文本是否在选定的行中。有任何想法吗?
qt - 禁用 QTreeView 中子项的排序
我正在使用 pyQt。如何禁用 QTreeView/StandardItemModel 中的子项排序?
c++ - qtreeview 的 qt eventfilter 不起作用?
我希望在选择 qtreeview 时按下回车键时发生“事件”。因为我不想继承 qtreeview(对设计师来说更容易) - 我尝试安装一个事件过滤器。但是,这似乎不起作用:
该类只包含一个公共函数:
并且事件添加如下:
ui.InputTreeView
按Enter键时我希望执行的树视图在哪里,以及InputTreeKeyboardEater
指向对象的(共享)指针InputTreeEventHandler
在上面的函数开始处放置断点时,它显示整个事件处理程序甚至没有被调用 - 我做错了什么?
qt - 如何绘制 QTreeview 内容
我正在尝试在 QPixmap 中绘制 QTreeview 的内容,以便在另一个 QWidget 中呈现它并打印它。
目前我的代码如下所示:
如果用户已经看到了 QTreeview,这将非常有效。树视图出现在主窗口的一个选项卡中。如果用户看到树视图然后单击执行我上面的代码的按钮,那么所有树视图都会出现在 QPixmap 中。否则只会出现一点树视图。
有谁知道如何解决这个问题?
谢谢
python - 自定义 QTreeView 项目
我完全是 PySide 和 Qt 的新手,现在需要创建一个应用程序,它具有带有样式项目的树视图。每个项目需要两行文本(不同样式)和一个按钮。许多项目应该在视图中,所以我选择了 QTreeView 而不是 QTreeWidget。现在我设法将简单的文本项(非样式)添加到 QTreeView 并且几乎不知道如何在一个项目上放置多个小部件。你能给我一个例子来说明如何创建这样的设计吗?
我在互联网上找到了一些示例,与我想要的类似,但它们都是用 C++ 编写的,如何将委托和其他东西转换为 Python 并不明显。我现在真的对这一切感到困惑......
c++ - 嵌套向量的Qt自定义树模型
我有一个嵌套数据结构,我想用 QTreeView 显示。
假设我有这样的东西:
QTreeView 应该像这样显示 MultiGallery:
我阅读了 Qt 模型视图示例,我知道我必须从 QAbstractItemModel 派生来创建树模型并实现成员函数:
我只是不知道实现这些的最佳方法是什么,尤其是索引功能。
xml - Qt4:使“简单 Dom 模型”可编辑;插入行
基本上,我想要实现的是结合“可编辑树模型”和“简单 Dom 模型”示例。因此,我以后者为基础,并在那里复制了编辑功能,更改了标志setData
等。
我已经在编辑条目方面取得了成功。
现在,我在向模型添加行时遇到了问题。
具体来说,当我在中使用 insertAfter 函数时QDomNode::parentNode()
,模型只会在内部更新。当我折叠和展开父节点时,添加的节点是最后一个节点的副本并插入到最后。
我能够正确处理的唯一方法是将 XML 保存到QString
并再次将其加载到QDomModel
andQTreeView
中。然后所有插入的东西都在它应该在的地方。但是随后所有扩展状态都丢失了!不是很人性化...
插入后版本:
现在,我尝试添加这样的行而不是insertAfter
:
被调用的函数是:
这个应该创建一行。它确实创建了一个不可见的父级,我可以单击它来展开。但是这个父级现在包含整个模型的副本......
我的 insertChildren 函数似乎有问题。就像现在一样,它将当前选定的行替换为空行。
qt - QTreeView / QFileSystemModel:如何限制树的深度?
我有一个以 QFileSystemModel 作为其模型的 QTreeView。
我不知道如何限制树的深度。我会认为这将是模型的功能?
我的意思是,例如,如果我将深度设置为 1,则只会显示顶级项目(即文件夹上没有展开按钮)
1 的深度会使树看起来像 Windows 资源管理器中的沼泽标准详细信息视图。
我正在使用 PySide,但我可以理解 PyQt 或 C++ 中的答案。
qt - 如何使用 QTreeView 和 QFileSystemModel 仅显示具有特定文件的文件夹?
我在使用 QTreeView 和 QFileSystemModel 过滤特定文件夹时遇到问题。
我将我的根 QFileSystemModel 设置为一个特定的文件夹 - 这有效。但我只想显示包含.jpg
文件的文件夹。这可能吗?
我过滤.jpg
文件并且有效,但我的 QTreeView 显示所有文件夹,即使是那些没有.jpg
文件的文件夹。因此,如果用户尝试打开某个没有.jpg
文件的文件夹,则不会发生任何事情。
如何隐藏这些文件夹?
注意:下面有部分代码。
python - 如何启用/禁用基于事件的 QTreeView 中的项目?
当发送特定信号时,我想启用/禁用 QTreeWidget 中的可检查项。
以下代码不起作用:
它产生错误:
是否有通过信号/插槽更改 QStandardItem 的状态或数据的解决方案?