2016-04-25 18 views
1

QTabWidget内にローカライズされたQWidgetを中央に配置しようとしています。内側のQWidgetのサイズを変更するときは、常にそれを中心に配置します。Qtの別のウィジェット内にウィジェットを配置する

どうすればいいですか?

+1

レイアウト内の周囲の四方にスペーサーを追加します。 –

+1

@NicolasHolthausこのような組み合わせをサポートするレイアウトはありません。 2つのスペーサーを追加し、残りの次元のウィジェットサイズポリシーを最大に設定すれば十分です。または、提案したように垂直+水平レイアウトを4つのスペースに組み合わせてください:) –

+1

@SaZその機能を提供するQtにはグリッドレイアウトがあります。 – Paraboloid87

答えて

5

1/QTabWidgetにレイアウトを作成:a QBoxLayoutなど。

2 /お客様のQWidgetを希望の位置に合わせて設定してください。

QTabWidget* tabwid = new QTabWidget(this); 
QBoxLayout* layout = new QBoxLayout(QBoxLayout::LeftToRight, tabwid); 
//if you want to set margins : layout->setContentsMargins(5, 5, 5, 5); 
QWidget* widget = new QWidget(); 
layout->addWidget(widget, Qt::AlignCenter); // center alignment 
+1

まさに!どんなレイアウトでもできます。 –

関連する問題