派生QHeaderView ,重写paintSection
header 数据由Model提供
相关QSS
QHeaderView::indicator:checked {
image: url(:/check.png);
}
QHeaderView::indicator:unchecked{
image: url(:/unchecked.png);
}
QHeaderView::indicator:indeterminate{
image: url(:/partially_check.png);
}
重写paintSection
void MyTableHeader::paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const {
painter->save();
QHeaderView::paintSection(painter, rect, logicalIndex);
painter->restore();
if (logicalIndex == 0) {
QStyleOptionButton optBtn;
optBtn.state |= QStyle::State_Enabled;
int dx = (rect.width() - 13) / 2;
int dy = (rect.height() - 13) / 2;
optBtn.rect = QRect(rect.x() + dx, rect.y() + dy,