问题标签 [qstandarditem]
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.
qt - 跟踪 QStandardItem 生命周期
我正在为 QStandardItemModel 编写一些包装器。是否可以跟踪 QStandardItems 的生命周期(删除事件)?
我认为唯一的方法是interhit QObject + QStandardItem。但由于某些原因,我不想这样做。
更新:
当从模型中删除该项目时,我需要删除包含指向 QStandardItem 的指针的对象。
这是解决方案。但我想对外部(不是我的)QStandardItem 做同样的事情。
qt - 为 QTreeView 中的特定项目添加右键菜单
我正在使用 Qt Creator 用 C++ 编写 Qt 桌面应用程序。
我在主窗口中声明了一个树视图和一个兼容模型。
现在,我想要一个树项目的右键菜单。不是针对所有项目,而是针对其中的一部分,例如:针对具有偶数索引的树元素。
我尝试使用以下代码添加一个简单的上下文菜单:
在 .h 文件中:
并在 .cpp 文件中:
在构造函数中:
和一个插槽:
此代码为我提供了一个包含所需操作的上下文菜单,但您知道如何仅为QStandardItem
具有偶数索引的 s 添加此操作吗?
顺便说一句,我通过以下方式将项目添加到树视图:
我用谷歌搜索了很多,但一无所获:(
提前致谢!
qt - 从 QStandardItemModel 中删除 QStandardItems
我正在尝试QStandardItems
从QStandrditemModel
使用中删除QPersistentIndex
。项目已成功删除,但在遍历模型时,已删除的行显示为没有任何数据。
我正在使用以下代码删除项目:
drag-and-drop - 自定义项目类型的 Qt 拖放行为
我有一个从 QStandardItem 派生的自定义项目类,正在 QTableView 中使用(模型只是 QStandardItemModel)。我希望能够从这个视图中拖动项目并将文本 (Qt::DisplayRole) 拖放到单独的 QTableWidget 上。
仅使用默认行为在拖动过程中一切看起来都很好,但实际上并没有放下任何东西;目标单元格保持空白。是否可以在不继承 QTableWidget 的情况下获得所需的行为?
python - PyQT——如何使 QTreeview 不可编辑但也可选择?
我刚从 wxPython 切换到 PyQT,我在使用 QTreeview 时遇到了一些问题。我有一个 QTreeview,它将显示分类为可扩展部分的数据,但此 TreeView 中的数据不应该是可编辑的,但我需要能够让用户选择数据(双击将执行另一种方法)。我不确定如何使它只读但也可选择。我正在使用 QStandardItemModel 和 QStandardItem 来保存数据。
任何帮助将非常感激。
c++ - QStandardItem 问题
当我想填写此 QList 时,我遇到了 QStandardItems 的 Qlist 问题。这是来自 Qt Creator 的错误消息:QList::operator[] 中的 ASSERT 失败:“索引超出范围”
这是我的代码,但它是临时的,img 每次迭代都会改变。
c++ - 如何将 QStandardItem 附加到两行中
我想要的是:
这是代码:
当它运行时,我看到 newItem 被附加到 item1 上,没有任何问题。但是,在第二个(item2)上, newItem 被附加但作为一个空白项。
它有什么问题?
编辑: 这是我的意思的打印屏幕。newItems 出现在第一行 (QStandardItem),但第二行为空白。
c++ - 在 QTreeView/QStandardItem 上跟踪对象的正确方法是什么
我有QTreeView
一个根节点下有三个分支
我想在创建时列出 Group1/2/3 下的一些对象。当一个对象的属性发生变化时,我想将它们从一个组移动到另一个组(比如一些状态变化)。一个对象有两个对 QTreeView 感兴趣的属性:QString IPaddress
和QString Name
. (我想在 QtreeView 上显示它们中的任何一个)
最好/正确的方法是什么?
我将对象存储在QVector
:QVector<Object*> mObject
我QMap
为每个小组做了什么来跟踪
insert
当它们Qmap
被附加到QStandardItem
或者
我注意到QMap
(QHash
以及)不会按照添加的顺序存储实体。
是否有任何特殊的类来跟踪我需要的 QStandardItems 或者我应该使用QVector或其他任何东西?
因为我有两个属性:IPaddr
并且Name
,我是否需要有两个QVector
s 来跟踪它们或者可以同时处理它们?
注意:如果没有复制+粘贴/编辑错误,那么上面代码片段的语法应该没问题。
qt - 无法转换 'QScopedPointer' 到 'QStandardItem *'
我使用此代码没有任何错误
我想将上面的代码更改为以下内容:
但我得到这个错误:
我该如何解决这个问题?
c++ - 如何“打印”出 QStandardItem 的数据
有没有办法打印出 QstandardItem 的数据,说我有;
我只是得到内存地址,(0x409bd00)
我也不能取消引用列表。