是否可以为QCheckbox
提供比Qt::Checked
和Qt::Unchecked
更多的状态?
我有一个QTreeWidget
,如果选中了一个项目,我希望父母显示一个填充复选框(某些状态如" Child检查")然后孩子应该有一个状态,如"父母检查"。如果后者太复杂而无法实现,我认为正常Qt::Checked
也可以正常工作。但如何实现第一呢?这是我的代码,我目前正在添加带有复选框的项目:
QTreeWidgetItem* Options::folderMonitoringCreateTreeCheckbox(QDir *dir, bool state, QTreeWidget *parent)
{
QString text = dir->absolutePath().section('/', -1, -1, QString::SectionSkipEmpty);
QTreeWidgetItem *newItem = new QTreeWidgetItem(parent);
newItem->setText(0,text);
newItem->setFlags(newItem->flags() | Qt::ItemIsUserCheckable);
newItem->setCheckState(0, Qt::Unchecked);
newItem->setToolTip(0, dir->absolutePath());
return newItem;
}
这是我想要实现的屏幕截图(截图取自MediaMonkey):
谢谢!
答案 0 :(得分:3)
我认为您正在寻找Qt::PartiallyChecked
,其描述如下:
部分检查该项目。如果检查了他们的孩子中的一些但不是全部,则可以部分检查分层模型中的项目。