14

2 つのタブを持つ単一ウィンドウのアプリケーションを構築したいと考えています。ブラウザのウィンドウとタブのように、ウィンドウに2つのタブを設定してクリックして切り替えるにはどうすればよいですか?

PS: 2 つのタブは、ボタンとテキスト ウィジェットのレイアウトが異なり、機能も異なります。

4

1 に答える 1

18

http://doc.qt.io/qt-5/qtabwidget.html#details

このQTabWidgetクラスは、タブ付きウィジェットのスタックを提供します。

タブ ウィジェットは、タブ バー ( を参照QTabBar) と、各タブに関連するページを表示するために使用される「ページ領域」を提供します。デフォルトでは、タブ バーはページ領域の上に表示されますが、別の構成も使用できます ( を参照TabPosition)。各タブは、異なるウィジェット (ページと呼ばれます) に関連付けられています。ページ領域には現在のページのみが表示されます。他のすべてのページは非表示になります。ユーザーは、タブをクリックするか、Alt + 文字のショートカットがある場合はそれを押すことで、別のページを表示できます。

通常の使用方法QTabWidgetは次のとおりです。

  1. を作成しますQTabWidget
  2. QWidgetタブ ダイアログのページごとに を作成しますが、それらの親ウィジェットは指定しません。
  3. 子ウィジェットをページ ウィジェットに挿入し、レイアウトを使用して通常どおりに配置します。
  4. addTab()orを呼び出しinsertTab()てページ ウィジェットをタブ ウィジェットに配置し、各タブに適切なラベルとオプションのキーボード ショートカットを付けます。

タブの位置は で定義されtabPosition、形状 は で定義されますtabShape

...

そして、あなたの答えがあります。

編集:例へのリンクも。

http://doc.qt.io/qt-5/qtwidgets-dialogs-tabdialog-example.html

更新: を使用することによるすべての利点に加えて、別のウィンドウに分割するなどQTabWidget、いくつかのタブの追加機能が に付属しています。QDockWidget私はQDockWidgets最近、ほぼ同じ外観のタブを取得するために使用しましたが、ティアオフでベイクされ、右クリックしてタブのチェックリストを表示します。

それが役立つことを願っています。

于 2013-05-23T04:22:10.140 に答える