您好,我想在 QtabBar 小部件中选项卡栏的每个选项卡中的图标下方放置图标和文本。默认情况下,文本和图标设置为彼此相邻,我想将一个显示在另一个下方。我们怎样才能做到呢?
似乎只有一种方法可以更改图标位置 - 重新实现 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);
}
}
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)