24

QTabWidget の下部にあるタブを大きくする必要があります。タッチスクリーンを使用するので、デフォルトのサイズは少し小さすぎます。

これを行う簡単な方法はありません(現在、それを行う良い方法はまったくありません。QTabWidgetに表示されるQTabBarに関連する唯一のメソッドは保護されており、他のクラスから継承する必要はありませんこの明示的な目的よりも)。

質問:

私がやりたいことは、QTabBar を特定の特定のサイズに設定することです。これは可能ですか?

これ以外に考えられる唯一のことは、QTabWidget をサブクラス化し、このクラスの機能を拡張またはオーバーライドして QTabBar のサイズを制御することです。

ありがとう。

4

2 に答える 2

40

サブクラス化したくない場合は、Qt スタイルシートを使用して、次のようにタブの高さと幅をすばやく設定できます。

// tabWidget is a pointer to a QTabWidget
tabWidget->setStyleSheet("QTabBar::tab { height: 100px; width: 100px; }");
// each tab should now be 100x100px

QTabWidget で setStyleSheet() を呼び出しているにもかかわらず、スタイルシートが QTabBar を参照していることに注意してください。

于 2009-11-13T05:53:44.700 に答える
9

Qt Designer を使用している場合QTabBar::tab { height: 100px; width: 100px; }は、 QTabWidget オブジェクトの stylesheet プロパティを直接配置するだけです。

于 2009-11-13T06:55:58.500 に答える