QT QCombox 选项不可选 置灰

本文介绍两种方法实现在QT中使ComboBox的某些选项不可选。一种是通过设置数据角色,另一种是通过改变QStandardItem的Flags。

QT QCombox 选项不可选 置灰

前言

QCombox 做一个下拉框,下拉框中的某些选项置为不可选状态

一、实现方法一

通过设置数据的 role 来实现。通过[virtual] bool QAbstractItemModel::setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) 函数将数据的角色设置成特定的。

    QModelIndex index = ui->comboBox->model()->index(1,0);
    QVariant v(0);
   ui->comboBox->model()->setData(index, v, Qt::UserRole - 1);

通过更改v 的值可以控制当前 index是否选中。V>0 可选。
ItemDataRole 是标识数据的角色,具体详细的可见qt 的官方文档,常用的枚举值大概有以下:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值