3

QToolButtonテキストがアイコンの左側にある場所を作成したいと思います。関連情報を見つけようとしましたが、次のことを試しました。

button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);

ただし、これによりテキストがボタンの右側に設定されます。スタイルシートを試してみましたが、テキストの配置はプッシュボタンのみです。これを行う方法はありますか?

私の最高レベルの目標は、次のようなインターフェイス バーを作成することです。

ゴール

その横にテキスト ラベルと画像が表示されます。現在、スタイルのために、チェック可能なツールボタンを備えたツールバーを使用しています(マウスオーバーしない限り境界線はなく、チェック可能なインデントがあり、テキストとアイコンが含まれています...)。間違ったタイプのウィジェットを使用している可能性は十分にあります。このレイアウトを変更できない場合、このスタイルをエミュレートする方法はありますか?

これは私が現在持っているものです:

現在.

4

2 に答える 2

4

使用できますQWidget::setLayoutDirection

toolbar->setLayoutDirection(Qt::RightToLeft);
于 2012-04-21T17:23:30.593 に答える
1

おそらく最善の策は、QWidget でこの機能を自分で作成することです。QHBoxLayout に配置された QLabel と QToolButton (または QPushButton) が必要です。QToolBar::addWidget()次に、またはを使用して、このカスタム ウィジェットをツールバーに追加できますQToolBar::insertWidget()

使用できるウィジェットの例を次に示します。

#include <QtGui>

class CoolButton : public QWidget
{
public:
    CoolButton(QWidget *parent = 0) : QWidget(parent)
    {
        QLabel *label = new QLabel("Hi!", this);
        QToolButton *button = new QToolButton(this);
        QHBoxLayout *layout = new QHBoxLayout;
        layout->addWidget(label);
        layout->addWidget(button);
        setLayout(layout);
    }
};
于 2012-04-21T16:31:30.027 に答える