我试图为Qt的复选框设置某种样式。我已经知道QtTableWidget具有QCheckbox。但是问题是我不知道如何设置QtTableWidget复选框的样式。
QTableWidgetItem *checkBoxItem = new QTableWidgetItem();
checkBoxItem->setCheckState(Qt::Unchecked);
table->setItem(row, column, checkBoxItem);
当我将setStyleSheet用于checkBox时:
checkBoxItem->setStyleSheet("...");
我有一个错误:
“QTableWidgetItem类”没有名为“setStyleSheet”的成员
编辑:我想对checkBox进行一些操作。这是第一个QTableWidgetItem的完整代码:
for (int i = 0; i < 4; ++i)
m_tableWidget->setRowHeight(i, 3 * em);
QTableWidgetItem *item1 = new QTableWidgetItem(tr("Show Message Preview"));
if (CGlobalZone::m_showMsgPreview)
item1->setCheckState(Qt::Checked);
else
item1->setCheckState(Qt::Unchecked);
item1->setFlags(Qt::ItemIsEnabled);
m_tableWidget->setItem(0, 0, item1);
最佳答案
您可以使用QAbstractItemView::indicator {...}设置样式(例如,QTableView::indicator:checked,QTableView::indicator:unchecked等)。
您不能将样式直接应用于QTableItemWidget,但是可以将样式表放在QTableWidget本身或其父项上。
关于c++ - Qt-如何自定义QTableWidget的复选框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30708831/