【发布时间】:2016-01-24 12:16:52
【问题描述】:
我正在使用QListWidgetItem 在我的QListWidget 中添加项目。
在某些情况下,我希望我的 QListWidget 中的某些行变为不可选择。 (我的意思是我希望一些 QListWidgetItem 是不可选择的)
有什么办法吗?
PS:我试过了
listWidgetItem->setFlags(Qt::NoItemFlags)
listWidgetItem->setSelected(false);
但它们不会禁用项目的选择。
编辑:
QStringList _strListClients = _strClients.split(",",QString::KeepEmptyParts,Qt::CaseInsensitive);
for(int i = 0; i < _strListClients.count(); i++)//Add Client's Check Boxes
{
QListWidgetItem* _listWidgetItem = new QListWidgetItem(_strListClients[i], listWidgetClients);
listWidgetClients->addItem(_listWidgetItem);
if(_strListClients[i] == "Unknown"){
_listWidgetItem->setSelected(false);
_listWidgetItem->setTextColor(Qt::red);
_listWidgetItem->setFlags(_listWidgetItem->flags() & ~Qt::ItemIsSelectable);
}
}
【问题讨论】:
-
但是您并没有像我在回答中所说的那样删除可选择标志...
-
我做到了。但没有成功。
标签: qt select qlistwidget qlistwidgetitem