设为首页 加入收藏

TOP

【Qt6】列表模型——抽象基类(四)
2023-09-23 15:44:27 】 浏览:647
Tags:Qt6
ol 值,true 表示成功,false 表示失败。

修改后,只要双击列表项,就会出现文本框,然后你可以输入新的值,输完后按“回车”键,或者移开焦点(如点击其他空白地方),就会触发更新。

 但是,你会发现一个问题:进入编辑状态时,文本框里都是空的。如下图:

这不合理,应该显示原有的值让用户修改。造成编辑状态下初始值空白的原因是咱们前面的 data 方法。因为咱们在返回值的时候,只判断了在 DisplayRole 角色下才返回,当视图进入编辑状态后,调用 data 方法获取数据时,role 参数的值是 EditRole,这就导致获取到空值。

回去修改一下 data 方法的代码。

QVariant MyItemModel::data(const QModelIndex &index, int role) const
{
    // 注意 role 这个参数,返回前必须判断
    if(role == Qt::DisplayRole || role == Qt::EditRole)
    {
        ……
    }
    ……
}

现在,双击列表项或按【F2】键进入编辑状态,文本框中的初始值就不会空白了。

 

好了,关于怎么继承列表模型的公共基类的话题,咱们就扯到这儿了。

首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇2.10 PE结构:重建重定位表结构 下一篇2.12 PE结构:实现PE字节注入

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目