问题标签 [qtreewidgetitem]

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

c++ - 如何更改 QTreeWidgetItem 的一部分的背景或文本颜色

我正在用 C++ 开发一个 Qt 应用程序。该应用程序以树小部件为中心,该小部件为系统中的每个实体都有一个子树。实体具有“突出显示”颜色,可以由用户指定并突出显示与特定实体相关的事件。实体根树项的背景颜色是实体的突出显示颜色。当发生与实体相关的事件时,我想让实体上匹配的标识符的背景颜色与实体的突出显示颜色相同。这是我正在尝试做的一个粗略的模型,伪 HTML 标签显示颜色和我想要它们的位置:

据我了解,QTreeWidgetItem 无法直接实现这一点。我知道我可以为树项提供一个委托来处理自定义绘画,但我并不精通 Qt 的 QStyle 部分。我们的客户将在 XP 和 Win7 上使用此应用程序,并且可能会或可能不会启用 WindowsClassic 样式。因此,处理所有 QStyle 可能性可能会变得非常复杂。是否有一个快捷方式,我可以让 QStyle 用我想要的背景颜色绘制我想要的文本部分,而不必处理树项目的每一个潜在的绘图需求?

0 投票
2 回答
2020 浏览

qt - 如何在 QTreewidget 中获取 QPushbutton 的单击事件的行索引。

我在 QTreeWidget 的每一行都有 QPushbutton。我想在 QPushbutton 的点击事件上获取行的索引。我正在使用这个:

在这个点击事件上,我想获取点击按钮行的索引?谢谢,阿希什

0 投票
1 回答
1325 浏览

list - 在 QtableWidget 列中添加项目列表

我尝试在我的 QtreeWidget 列中插入一个项目列表:每个数据都插入到每一列中,因此项目与列一样多。我正在使用 MVC 架构,但插入失败!

这是我的看法:

这是我的模型:

这是我的控制器:

有人可以帮我找出问题所在吗?

UDP日期

我改变了将项目列表添加到 QtreeWidget 的方式,这对我来说似乎更合乎逻辑

我的新观点:

但是现在我有一个 malloc_error_break 来调试,我认为这是因为我没有分配我的项目,但是在 python 中,我怎么能用我的项目列表做一个 QTreeWidgetItem *items= new QTreeWidgetItem() ?

0 投票
2 回答
172 浏览

c++ - 我想用迭代器的方式做一个循环,但是有错误

我有以下代码:

但是有一个错误:
conversion from 'QList<QTreeWidgetItem*>::iterator' to non-scalar type 'QList<QTreeWidgetItem>::iterator' requested

0 投票
1 回答
73 浏览

c++ - 需要解决哪个类以支持 Qt 应用程序和 finder 之间的拖放

我正在尝试构建一个应用程序,该应用程序列出了 Android 设备中的文件夹和文件以查找并能够从/复制到 PC。

我在 Browser.cpp 中完成了如下课程

和 browser.h 中的类为

Drag'n drop 正在树中工作 即使它不能正常工作,我也可以移动东西,因为我可以将文件拖放到文件上并创建一个子文件。通过文件,我只是指 TreeWidgetItem 不是真正的文件。这也是我需要添加的东西,但我不知道在哪里。

但我不知道如何处理 dran'ndrop。我需要能够控制树内部和外部的拖放以将文件从/复制到我的计算机。

看起来 :

永远不会被调用...即使拖放有效

知道如何处理事件和重载或自定义行为吗?

谢谢

0 投票
1 回答
1578 浏览

qt - 任意选择的 QTreeWidgetItems 的样式悬停和选定颜色

我有一个QTreeWidget并且我有一个样式表应用于它。我希望其中一些QTreeWidgetItems 具有与其他样式表样式项目不同hoverselected颜色。normal我为状态着色,setData(columnNumber, Qt::ForegroundRole, colorName)但我无法更改悬停和选定状态的颜色。

有谁知道是否有可能以Qt某种方式实现这一目标?

谢谢!

0 投票
1 回答
443 浏览

c++ - QTreeWidget在C ++中从内存中扩展单个项目

我有一个 Qt QTreeWidget,我正在尝试保存已扩展标题项目的状态,以便当我用新信息刷新树时,它可以重新扩展以前扩展的项目。

每次发出itemExpandedor时itemCollapsed signal,我都会在 a 中捕获它slot并保存到boolean该特定项目的成员中,以表示 expand 是 nowtrue还是false. 这是我的记忆。

刷新树时,我使用完全清除树

接下来我使用折叠所有标题

现在我想恢复哪些项目已展开,并使用boolean我拥有的每个项目将它们设置为展开,这表示该项目之前是使用展开还是折叠

我不太确定如何从我boolean自己那里获取项目的索引。

我会认为

会给我我toplevelitem在位置 0 的索引,然后使用boolean与位置 0 关联的我,然后我可以决定是否扩展该项目?

这也不能解决我想要对代表树中每个项目的每个“布尔值”执行此操作的问题。

提前致谢。

0 投票
4 回答
1879 浏览

qt - 在特定的 QTreeWidgetItem 上设置 QItemDelegate

是否可以设置QItemDelegate一个特定的QTreeWidgetItem?我需要QTreeWidgetItem用特定颜色为一些 s 着色。

我认为这是可能的,QAbstractItemView::setItemDelegateForRow但我不知道如何。我不能使用QAbstractItemView::setItemDelegateForRow,因为我需要在QTreeWidget.

有谁知道解决方案?

0 投票
1 回答
156 浏览

c++ - QList 语句

我正在使用 QTreeViewItem 和 QList。

我在我的 C++/Qt 应用程序中所做的是构建一个内部包含多个元素的 TreeView。

单击专用操作时,我正在检查树视图的哪个项目被选中并获取项目关联名称。这工作正常,但在采取任何行动之前,我需要知道我是否选择了某些东西。但是没有办法测试结果是 0 还是任何其他值。

我需要确保我没有管理未分配或未归档项目指针的操作。

0 投票
1 回答
399 浏览

c++ - QTreeWigetItem - 如何管理单击以直接更改项目文本的名称

我创建了一个 QTreeView,它由 QTreeWidgetItem 归档。我的应用程序是一种文件浏览器。

ViewTree 定义如下:

我添加了一个“添加文件夹”按钮,如下定义的操作:

// MyTree->edit(selectedItem());

如您所见,默认情况下,我在 mtp FS 系统上创建了一个“NewFolder”。

在创建文件夹之前我想做什么,我希望能够将“NewFolder”重命名为用户想要的。我不想创建一个弹出窗口来输入文本。我想要的是一种“重命名”行为。文件夹出现在树形视图中,新文件夹被选中并允许直接更改文本。就像在 Finder 上一样,当您单击文件夹名称时,它会被选中,并且用户可以在 Finder 中更改名称而不会弹出任何窗口

谢谢