qt - QToolbarフォースシュリンク

qt user-interface qtoolbar

Qtツールバーは、十分なスペースがない場合、縮小して「拡張」ボタンを表示します。

とにかくツールバーを事前に縮小する方法はありますか?最初のラベルだけを表示したいので、多数のツールバーをフロート可能なポップアップメニュー(または線形ダイアログボックス)として使用できます。



特にダイアログではなくツールバーを使用したいのは、ツールバーがすでに別のアプリ用に作成されているためです。
答え
内部的には、QToolbarLayoutと呼ばれるクラスが、ツールバーが提供されるスペースのサイズに基づいて、「拡張」ボタンについてこの決定を行います。

http://qt.gitorious.org/qt/qt/blobs/4.7/src/gui/widgets/qtoolbarlayout.cpp#line398

したがって、サイズを設定する以外に、メソッドやスロットはありません。ただし、QSettingsを使用して、セッション間でツールバー情報をアプリケーションに保持させることができます。

http://doc.qt.nokia.com/latest/qsettings.html#details

http://doc.qt.nokia.com/latest/qsettings.html#restoring-the-state-of-a-gui-application

これにより、このスタイルでの作業を希望するユーザーに、そのように設定するオプションを許可し、それを希望しないユーザーも好みのレイアウトを保存できるようになります。
関連記事

c++ - Qt:カスタムウィジェットの画像リソースを適切に保存する

qt - QWidgetでアルファ透明マスクを使用していますか?

linux - Qt子プロセスを閉じて、子プロセスにクリーンアップコードを実行させるにはどうすればよいですか?

qt - QT、QTableWidget:cellChanged()シグナルによるアイテムの変更

eclipse - qtcreatorのすべてのGUI要素をユーザーが移動できますか?または一部のみですか?

xml - QMLでのRSS解析

qt - QtアプリにUIがあるかどうかを確認する

python - qmenubarを追加した後、デストラクタが呼び出されない

multithreading - マルチスレッドプログラムで使用されているAPIの非再入可能関数

qt - QStyledItemDelegateのComboBoxからダイアログを呼び出す