2

現在、QTabWidget を使用して、さまざまな要素 (ラベル、ボタンなど) を持つ QWidget を 1 つだけ表示しています。Ubuntu と Qt5.5 での作業。

QTabWidget *tw;
QString title = "1";
ui->tw->addTab(&tab, title); // tab is my QWidget

値が異なる複数のタブに同じ QWidget を表示したいと思います。そのための「きれい」はありますか?

ミカ

4

1 に答える 1

1

いいえ、それを行うための「クリーンな」方法はありません。はQTabWidgetスタックを使用するため、タブごとに個別のウィジェットが必要になります。それはドキュメントで言われています:

各タブは、異なるウィジェット (ページと呼ばれます) に関連付けられています。

唯一の方法は、 のいくつかのインスタンスをインスタンス化しQWidget、それらを に追加することQTabWidgetです。

QTabWidget *tw;
QString title  = "1";
QString title2 = "2";
ui->tw->addTab(&tab, title);   // tab is your QWidget
ui->tw->addTab(&tab2, title2); // tab2 is another QWidget

を使用する場合はQTabBar、ウィジェットをその中に入れます (QVBoxLayoutたとえば、 a を使用)。次に、QTabBar のcurrentChangedシグナルに接続して、必要に応じてウィジェットを変更します。

于 2016-06-02T15:05:44.617 に答える