QTabWidget
アイコンのみが必要です:
Qtでタブのラベルテキストを非表示にするにはどうすればよいですか? ""
ドッキングされたウィジェット ( QDockWidget
) を使用していて、ラベル テキストが自動的に設定されるため (ウィジェットがフローティングの場合は必要です) 、テキストを空の文字列 ( ) に設定できません。
しかし、タブモードでは、(タブの)アイコンを表示したいだけです。可能なアプローチ:
- フォント サイズを 0 にしますか?
- 独自のバー クラスを作成し、ここのようにペイント イベントをオーバーライドする必要があります。
もっと簡単/きれいですか?
- - 編集 - -
OK、「ウィンドウのタイトルを空の文字列に設定し、元のテキストにリセットする」アプローチが機能します。topLevelChanged
これには信号を使用しています。ただし、空のテキストがまだスペースを占有するため、いくつかの欠点があります。もう 1 つの問題は、テキストのツールチップが消えてしまい、元に戻すことができないことです。
私が現在試みているのは、「空っぽのテキスト」と Prasad Silva のアプローチの間の何かです。タブ内のテキスト ラベルを特定し、そのサイズを 0 に設定してからリセットしようとしました。少し異なりますが、テキストはそのまま保持されます。
ところで、タブの上に線が表示されますが、これが何であるか (どこから来たのか) わかりますか? 編集:これには「簡単な方法」(スタイルシート、属性)はないようです。QTabBarで最終行を隠すを参照してください
自動生成されたものは扱いにくいので、タブバー全体を自分で作成するかもしれません (これについては PS に同意します)。