2012-04-21 10 views
3

QToolButtonテキストをアイコンの左側にしたいと考えています。関連する情報を見つけようとしました。QToolButtonのレイアウトを逆転する

button->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); 

ただし、ボタンの右側にテキストを設定します。私はスタイルシートを試してみましたが、テキストの位置合わせは押しボタンのためのものです。これを行う方法はありますか?右横にテキストラベルやイメージで

goal

私の最高レベルの目標は、次のようになりますインターフェイスバーを作ることです。現在、私はスタイルのためにチェック可能なツールボタンを備えたツールバーを使用しています(moused-overがなければ枠線がなく、チェック可能なインデントがあり、テキストとアイコンが含まれています...)。間違ったタイプのウィジェットを使用している可能性があります。このレイアウトを変更できない場合、このスタイルをエミュレートする方法はありますか?

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

currentを。

答えて

4

あなたはQWidget::setLayoutDirectionを使用することができます。

toolbar->setLayoutDirection(Qt::RightToLeft); 
1

おそらく、QWidgetでこの機能を作成することをお勧めします。 QLabelとQToolButton(またはQPushButton)がQHBoxLayoutに配置されている必要があります。次に、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); 
    } 
};