嗨,我想在 QtabBar 小部件中标签栏的每个标签中的图标下方放置一个图标和一个文本。默认情况下,文本和图标设置在彼此旁边,我想在另一个下方显示一个。我们该怎么做。
问问题
1330 次
1 回答
3
似乎只有一种方法可以改变图标的位置——重新实现 QTabBar 的paintEvent。像这样的代码可能会有所帮助:
class MyTabBar : public QTabBar
{
...
protected:
void paintEvent(QPaintEvent *) {
QStylePainter painter(this);
for(int i = 0; i < 3; ++i) {
QStyleOptionTabV2 option;
initStyleOption(&option, i);
painter.drawItemPixmap(option.rect, Qt::AlignTop|Qt::AlignHCenter, option.icon);
painter.drawItemText(option.rect, Qt::AlignBottom|Qt::AlignHCenter, palette(), 1, option.text);
}
}
};
于 2011-10-17T05:07:49.010 回答