问题标签 [qtableview]
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++ - 如何使我的 QAbstractTableModel 与我的数据存储保持同步?
在我的应用程序中,我有一个用于保存项目列表的类:
项目操作函数(添加、更新、删除)在完成时发出相应的信号(项目添加、更改、删除)。我有一个此类数据库的列表和一个用于显示其内容的 QTableView。我还有一个自定义的 QAbstractTableModel 派生模型类的对象,可以在需要时指向(并显示)不同的数据库:
我在使模型反映对其当前数据库的更改时遇到问题。以前,我通过每次在数据库中发生更改(由从数据库到 DatabaseModel 的信号触发)时发出模型重置来使其工作,但我认为这太过分了。现在我不知道如何正确连接数据库和模型。
将数据库信号连接到模型并使模型发出 dataChanged() 不起作用,因为数据库中的项目数(以及模型的行数)正在发生变化。QAbstractTableModel 中有称为 rowsInserted() 和 rowsRemoved() 的信号,但文档说它们不能在自定义类中使用。有要重新实现的虚函数称为 removeRows() 和 insertRows(),但文档说我必须在其中调用 begin(Remove|Insert)Rows() 和 end(Remove|Insert)Rows(),这会导致两个问题:
- begin...Rows() 需要一个 QModelIndex 'parent' 参数,我不知道该使用什么
编辑:实际上没关系,现在我为此传递 QModelIndex() 。QAbstractTreeModel 使用它来识别树中的父节点,显然对于表模型来说不是必需的。 - 文档说在更改底层数据存储之前需要调用这些函数
如何使模型与数据库保持同步?谢谢!
c++ - QTableView 的 selectedItems 中选定行/行的顺序
我正在使用 QTableWidget 并想将一些单元格复制到剪贴板。似乎 QTableWidget 只支持 selectedItems 方法。出于某种原因,我将输出作为第一列,然后是第二列。不是:第一行,然后是第二行。这使得分离列/行变得有些困难。你知道出了什么问题吗?谢谢!
构建时:
有任何想法吗?谢谢!
qt - PyQt QTableView 与 QComboBox
我正在显示来自带有QTableView
. 我希望将字段显示为组合框,以便用户可以轻松修改它们。我阅读了很多关于自定义委托项目和标志必须设置为的内容IsUserCheckable
,但我不明白所有这些应该如何工作。我用标志和角色尝试了几件事,但完全没有效果,所以我确实缺少一些重要的东西。
我真的很感激这个的工作代码示例,或者如果有人手头有一个很好的解释,或者至少有一些很好的解释:)
qt - QTableView 的行问题
大家好,我是 QT 的新手,我正在做 Qtableview 以将 3 列中的信息添加到无限行,例如
这就是我想要插入/追加行的方式,但这就是我在插入/追加行功能之后得到的方式。
我得到了空白并增加了列数
我正在使用QStandardItemmodel
模型这是创建模型项的代码
qlineedit enter1_edit,enter2_edit & enter3_edit
使用(在其他函数/方法中)添加行中的值
main_tableview
是对象qtableview
谢谢你帮助我!
qt - 如何在 QTableView 中获取选定的行
在看了很多关于获取选定行号的线程之后,我真的很困惑。
您如何QTableView
使用QStandardItemModel
我在下面使用的选择模型和行为获得 ROW 编号
如果你有自己的选择方式,你能解释一下它是如何工作的。谢谢您的帮助!
combobox - 带有组合框的 QTableView
我希望我的 QTableView 有一列组合框。经过多次尝试,我已经达到了我的目标:显示组合框。
现在我的问题是他们不会保持所选项目的显示。
我使用自定义委托来执行此操作,以下是相关代码:
类 ComboBoxDelegate(QtGui.QItemDelegate):
感谢您的关注 !
pyqt - selectionModel() 的 QTableView 问题
我对 QTableView.selectionModel() 的调用有问题。我在另一个类中实例化我的 QTableView,然后当我打开一个新项目并需要填写我的视图时,我调用一个函数 fillGrid(),在其中我获取数据等。这也是我调用 selectionModel() 方法的地方。
我第一次调用它时一切顺利。但是,如果我尝试在程序的同一实例中再次调用它,则会出现以下错误:
TypeError:“QItemSelectionModel”对象不可调用
我的函数 fillGrid 看起来像:
知道为什么会这样吗?提前致谢
combobox - 来自 QTableView 的自定义委托中的组合框的选定项
我使用自定义委托在 QTableView 中显示一列组合框。所有组合框的值都相同,因此给我带来麻烦的并不是人口部分。
我希望它们显示为选定的项目,我可以从数据库中检索一些值。我可以从委托访问数据库,但为了发送我的请求,我需要组合框的行。
所以我想我的问题是:如何遍历表的所有行并从自定义委托内部执行一些操作?
如果它可以帮助这里是我的自定义委托类:
我从 QTableView 中这样称呼它:
希望我足够清楚,感谢您的关注
c++ - 是否存在在 QTableView 顶部显示文本行的方法?
我需要如下图所示的东西,但我找不到使用 Qt 4.3.3 的方法......
python - PyQt 表格视图和对多个选定单元格的编辑
我一直在研究一个简单的 tableview 模型,当我想编辑多个单元格时遇到了一个绊脚石。具体来说,我需要能够更改我的单元格复选框上的检查状态。当我选择多个单元格并切换复选框时,只有单击的单元格会更新其复选框。任何帮助都会很棒。谢谢