QToolBar Class
QToolBar クラスは、一連のコントロールを含む移動可能なパネルを提供します。詳細...
| ヘッダー: | #include <QToolBar> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 継承元: | QWidget |
プロパティ
|
|
パブリック関数
| QToolBar(QWidget *parent = nullptr) | |
| QToolBar(const QString &title, QWidget *parent = nullptr) | |
| virtual | ~QToolBar() |
| QAction * | actionAt(const QPoint &p) const |
| QAction * | actionAt(int x, int y) const |
| QAction * | addSeparator() |
| QAction * | addWidget(QWidget *widget) |
| Qt::ToolBarAreas | allowedAreas() const |
| void | clear() |
| QSize | iconSize() const |
| QAction * | insertSeparator(QAction *before) |
| QAction * | insertWidget(QAction *before, QWidget *widget) |
| bool | isAreaAllowed(Qt::ToolBarArea area) const |
| bool | isFloatable() const |
| bool | isFloating() const |
| bool | isMovable() const |
| Qt::Orientation | orientation() const |
| void | setAllowedAreas(Qt::ToolBarAreas areas) |
| void | setFloatable(bool floatable) |
| void | setMovable(bool movable) |
| void | setOrientation(Qt::Orientation orientation) |
| QAction * | toggleViewAction() const |
| Qt::ToolButtonStyle | toolButtonStyle() const |
| QWidget * | widgetForAction(QAction *action) const |
パブリック・スロット
| void | setIconSize(const QSize &iconSize) |
| void | setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle) |
シグナル
| void | actionTriggered(QAction *action) |
| void | allowedAreasChanged(Qt::ToolBarAreas allowedAreas) |
| void | iconSizeChanged(const QSize &iconSize) |
| void | movableChanged(bool movable) |
| void | orientationChanged(Qt::Orientation orientation) |
| void | toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle) |
| void | topLevelChanged(bool topLevel) |
| void | visibilityChanged(bool visible) |
再実装された保護関数
| virtual void | actionEvent(QActionEvent *event) override |
| virtual void | changeEvent(QEvent *event) override |
| virtual bool | event(QEvent *event) override |
| virtual void | paintEvent(QPaintEvent *event) override |
詳細な説明
ツールバーは通常、QMainWindow::addToolBar(const QString &title) を呼び出すことで作成されますが、たとえば、QVBoxLayout の最初のウィジェットとして追加することもできます。
ツールバーのボタンは、addAction() またはinsertAction() を使用してアクションを追加することで追加されます。 ボタンのグループは、addSeparator() またはinsertSeparator() を使用して区切ることができます。ツールバーボタンが適切でない場合は、addWidget() またはinsertWidget() を使用して、代わりにウィジェットを挿入することができます。適切なウィジェットの例としては、QSpinBox 、QDoubleSpinBox 、およびQComboBox などがあります。ツールバーボタンが押されると、actionTriggered() シグナルが発信されます。
ツールバーは、特定の領域(例えば、ウィンドウの上部)に固定することも、ツールバー領域間で移動させることもできます。詳細は、setMovable()、isMovable()、allowedAreas() およびisAreaAllowed() を参照してください。
ツールバーのサイズ変更により、その中に含まれるすべての項目を表示するには小さくなりすぎた場合、ツールバーの最後の項目として拡張ボタンが表示されます。この拡張ボタンを押すと、現在ツールバーに収まりきらない項目を含むメニューがポップアップ表示されます。
QToolBarがQMainWindow の子ではない場合、addWidget()を使用してツールバーに追加されたウィジェットを拡張ポップアップに表示する機能は失われます。その代わりに、QWidgetAction を継承し、QWidgetAction::createWidget()を実装して作成されたウィジェットアクションを使用してください。
QToolButton 、QMenu 、およびQActionも参照してください 。
プロパティのドキュメント
allowedAreas : Qt::ToolBarAreas
ツールバーを配置できる場所
デフォルトは `Qt::AllToolBarAreas` です。
このプロパティは、ツールバーがQMainWindow 内にある場合にのみ意味を持ちます。
アクセス関数:
| Qt::ToolBarAreas | allowedAreas() const |
| void | setAllowedAreas(Qt::ToolBarAreas areas) |
通知シグナル:
| void | allowedAreasChanged(Qt::ToolBarAreas allowedAreas) |
「movable」も参照してください 。
floatable : bool
このプロパティは、ツールバーを独立したウィンドウとしてドラッグ&ドロップできるかどうかを指定します。
デフォルト値は true です。
アクセス関数:
| bool | isFloatable() const |
| void | setFloatable(bool floatable) |
[read-only] floating : bool
このプロパティは、ツールバーが独立したウィンドウであるかどうかを示します。
デフォルトでは、このプロパティの値はtrue です。
アクセス関数:
| bool | isFloating() const |
関連項目: QWidget::isWindow()。
iconSize : QSize
ツールバー内のアイコンのサイズ。
デフォルトのサイズはアプリケーションのスタイルによって決定され、QStyle::PM_ToolBarIconSize ピクセル単位のメトリックに基づいています。これはアイコンが持つことのできる最大サイズです。これより小さいサイズのアイコンは拡大表示されません。
アクセス関数:
| QSize | iconSize() const |
| void | setIconSize(const QSize &iconSize) |
Notifierシグナル:
| void | iconSizeChanged(const QSize &iconSize) |
movable : bool
このプロパティは、ユーザーがツールバー領域内、またはツールバー領域間でツールバーを移動できるかどうかを指定します。
デフォルト値はスタイルに依存し(QStyle::SH_ToolBar_Movable スタイルヒントによって決定されます)、ほとんどのスタイルではtrue となります。
このプロパティは、ツールバーがQMainWindow 内にある場合にのみ意味を持ちます。
アクセス関数:
| bool | isMovable() const |
| void | setMovable(bool movable) |
Notifierシグナル:
| void | movableChanged(bool movable) |
「allowedAreas」も参照してください 。
orientation : Qt::Orientation
ツールバーの配置
デフォルトはQt::Horizontal です。
この関数は、ツールバーがQMainWindow によって管理されている場合には使用しないでください。メインウィンドウにすでに追加されているツールバーを別のQt::ToolBarArea に移動したい場合は、QMainWindow::addToolBar()またはQMainWindow::insertToolBar()を使用できます。
アクセス関数:
| Qt::Orientation | orientation() const |
| void | setOrientation(Qt::Orientation orientation) |
Notifierシグナル:
| void | orientationChanged(Qt::Orientation orientation) |
toolButtonStyle : Qt::ToolButtonStyle
このプロパティは、ツールバーボタンのスタイルを保持します
このプロパティは、QActionとして追加されたすべてのツールボタンのスタイルを定義します。なお、addWidget()メソッドを使用してQToolButton を追加した場合、このボタンのスタイルは適用されませんのでご注意ください。
ツールボタンのスタイルをシステム設定に従わせるには、このプロパティをQt::ToolButtonFollowStyle に設定します。Unixでは、デスクトップ環境のユーザー設定が使用されます。その他のプラットフォームでは、Qt::ToolButtonFollowStyle はアイコンのみを意味します。
デフォルトは `Qt::ToolButtonIconOnly` です。
アクセス関数:
| Qt::ToolButtonStyle | toolButtonStyle() const |
| void | setToolButtonStyle(Qt::ToolButtonStyle toolButtonStyle) |
Notifierシグナル:
| void | toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle) |
メンバ関数のドキュメント
[explicit] QToolBar::QToolBar(QWidget *parent = nullptr)
指定されたparent を使用して、QToolBarを構築します。
[explicit] QToolBar::QToolBar(const QString &title, QWidget *parent = nullptr)
指定されたparent を使用してQToolBarを構築します。
指定されたウィンドウtitle はツールバーを識別するものであり、QMainWindow によって提供されるコンテキストメニューに表示されます。
setWindowTitle()も参照してください 。
[virtual noexcept] QToolBar::~QToolBar()
ツールバーを削除します。
QAction *QToolBar::actionAt(const QPoint &p) const
p のポイントにあるアクションを返します。アクションが見つからなかった場合、この関数は 0 を返します。
QWidget::childAt()も参照してください 。
QAction *QToolBar::actionAt(int x, int y) const
x 、y におけるアクションを返します。アクションが見つからなかった場合、この関数は 0 を返します。
これはオーバーロードされた関数です。
[override virtual protected] void QToolBar::actionEvent(QActionEvent *event)
QWidget::actionEvent(QActionEvent *event) を再実装します。
[signal] void QToolBar::actionTriggered(QAction *action)
このシグナルは、このツールバー内のアクションがトリガーされたときに発火します。これは、アクションのツールボタンが押されたとき、またはツールバーの外で何らかの方法でアクションがトリガーされたときに発生します。このパラメータには、トリガーされたaction が格納されます。
QAction *QToolBar::addSeparator()
ツールバーの末尾に区切り線を追加します。
insertSeparator()も参照してください 。
QAction *QToolBar::addWidget(QWidget *widget)
指定されたwidget を、ツールバーの最後の項目としてツールバーに追加します。
ツールバーは `widget` の所有権を取得します。
このメソッドでQToolButton を追加した場合、ツールバーのQt::ToolButtonStyle は反映されません。
注: ウィジェットの表示/非表示を切り替えるには、QAction::setVisible()を使用してください 。QWidget::setVisible()、QWidget::show()、QWidget::hide() を使用しても機能しません。
insertWidget()も参照してください 。
[signal] void QToolBar::allowedAreasChanged(Qt::ToolBarAreas allowedAreas)
このシグナルは、ツールバーの配置可能領域の集合が変更されたときに発火します。ツールバーを配置できる新しい領域は、allowedAreas で指定されます。
注: プロパティ `allowedAreas` に対する通知 シグナルです。
「allowedAreas」も参照してください 。
[override virtual protected] void QToolBar::changeEvent(QEvent *event)
QWidget::changeEvent(QEvent *event) を再実装します。
void QToolBar::clear()
ツールバーからすべてのアクションを削除します。
removeAction()も参照してください 。
[override virtual protected] bool QToolBar::event(QEvent *event)
QWidget::event(QEvent *event) を再実装します。
[signal] void QToolBar::iconSizeChanged(const QSize &iconSize)
このシグナルは、アイコンのサイズが変更されたときに発火します。iconSize パラメータには、ツールバーの新しいアイコンサイズが格納されます。
注: プロパティ `iconSize` に対する通知 シグナルです。
関連項目: iconSize およびQMainWindow::iconSize 。
QAction *QToolBar::insertSeparator(QAction *before)
「before 」アクションに関連付けられたツールバー項目の前に、区切り記号をツールバーに挿入します。
「addSeparator()」も参照してください 。
QAction *QToolBar::insertWidget(QAction *before, QWidget *widget)
指定されたwidget を、before アクションに関連付けられたツールバー項目の先頭に挿入します。
注:ウィジェットの表示/非表示を切り替えるには、QAction::setVisible() を使用してください。QWidget::setVisible()、QWidget::show()、およびQWidget::hide() を使用しても機能しません。
「addWidget()」も参照してください 。
bool QToolBar::isAreaAllowed(Qt::ToolBarArea area) const
このツールバーが、指定されたarea 内でドッキング可能であればtrue を返し、そうでない場合はfalse を返します。
[signal] void QToolBar::movableChanged(bool movable)
このシグナルは、ツールバーが移動可能または固定状態になったときに発火します。ツールバーが移動可能な場合、movable は true となり、そうでない場合は false となります。
注: プロパティ `movable` に対する通知 シグナルです。
「movable」も参照してください 。
[signal] void QToolBar::orientationChanged(Qt::Orientation orientation)
このシグナルは、ツールバーの向きが変更されたときに発火します。orientation パラメータには、ツールバーの新しい向きが格納されます。
注: プロパティ `orientation` に対する通知 シグナルです。
「orientation」も参照してください 。
[override virtual protected] void QToolBar::paintEvent(QPaintEvent *event)
QWidget::paintEvent (QPaintEvent *event)を再実装します。
QAction *QToolBar::toggleViewAction() const
このツールバーを表示または非表示にするために使用できる、チェック可能なアクションを返します。
このアクションのテキストには、ツールバーのウィンドウタイトルが設定されます。
QAction::text およびQWidget::windowTitleも参照してください 。
[signal] void QToolBar::toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)
このシグナルは、ツールボタンのスタイルが変更されたときに発生します。toolButtonStyle パラメータには、ツールバーの新しいツールボタンのスタイルが格納されます。
注: プロパティ `toolButtonStyle`の通知 シグナルです。
関連項目: ` toolButtonStyle ` および `QMainWindow::toolButtonStyle`。
[signal] void QToolBar::topLevelChanged(bool topLevel)
このシグナルは、floating プロパティが変更されたときに発火します。topLevel パラメータは、ツールバーが現在フローティング状態の場合はtrue、そうでない場合はfalseとなります。
isWindow()も参照してください 。
[signal] void QToolBar::visibilityChanged(bool visible)
このシグナルは、ツールバーがvisible (非表示)になったときに発火します。これは、ウィジェットが非表示になったり表示されたりしたときに発生します。
QWidget *QToolBar::widgetForAction(QAction *action) const
指定されたaction に関連付けられたウィジェットを返します。
addWidget()も参照してください 。
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.