2

こんにちは、QtabBar ウィジェットのタブバーの各タブのアイコンの下にアイコンとテキストを配置したいと思います。デフォルトでは、テキストとアイコンは隣り合わせに設定されています。一方を他方の下に表示したいと思います。どのようにそれを行うことができます。

4

1 に答える 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 に答える