c++ - QListView & QStandardItemModel 在编辑行之前检查文本

标签 c++ qt events qlistview qstandarditemmodel

我想在用户编辑之前检查 QListView 中一行的文本。如果它不符合某种模式,我不想接受它。

目前我有一个QListViewQStandardItemModel。我可以通过 QStandardItemModel 轻松添加和删除项目。我还设置了 ListView 的模型。

列表或模型中是否有一些委托(delegate)事件函数可供编辑?

最佳答案

您可以重载 QStandardItemModel 中的 data()setData() 函数,然后当用户尝试编辑您的 setData 项目时 将使用 Qt::EditRole 调用,您可以在那里进行处理。

http://qt-project.org/doc/qt-5.0/qtcore/qabstractitemmodel.html#setData

关于c++ - QListView & QStandardItemModel 在编辑行之前检查文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18470445/

相关文章:

javascript - 一个元素上有两个监听器 : let only one fire

c++ - 具有 lambda : how to compile? 的 max_element

c++ - QT 应用程序卡住

c++ - 与 TCP 套接字断开连接非常奇怪

c++ - 布局在 Visual Studio 2015 中不起作用?

c++ - 将 QByteArray 转换为无符号短整型 : not as expected

JavaScript 闭包问题

asp.net - 应该如何正确使用RegisterForEventValidation

c++ - 读取/排序大型 .CSV 文件

c++ - 无论我做什么,我都会得到 LNK1169 和 LNK2005