現在、QTabWidget を使用して、さまざまな要素 (ラベル、ボタンなど) を持つ QWidget を 1 つだけ表示しています。Ubuntu と Qt5.5 での作業。
QTabWidget *tw;
QString title = "1";
ui->tw->addTab(&tab, title); // tab is my QWidget
値が異なる複数のタブに同じ QWidget を表示したいと思います。そのための「きれい」はありますか?
ミカ
現在、QTabWidget を使用して、さまざまな要素 (ラベル、ボタンなど) を持つ QWidget を 1 つだけ表示しています。Ubuntu と Qt5.5 での作業。
QTabWidget *tw;
QString title = "1";
ui->tw->addTab(&tab, title); // tab is my QWidget
値が異なる複数のタブに同じ QWidget を表示したいと思います。そのための「きれい」はありますか?
ミカ
いいえ、それを行うための「クリーンな」方法はありません。は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
シグナルに接続して、必要に応じてウィジェットを変更します。