이 페이지에서

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)

알림 신호:

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)

알림 신호:

void toolButtonStyleChanged(Qt::ToolButtonStyle toolButtonStyle)

멤버 함수 문서

[explicit] QToolBar::QToolBar(QWidget *parent = nullptr)

지정된 ` parent`을 사용하여 `QToolBar`를 생성합니다.

[explicit] QToolBar::QToolBar(const QString &title, QWidget *parent = nullptr)

지정된 parent 을 사용하여 QToolBar를 생성합니다.

주어진 window 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)

before 동작과 연결된 툴바 항목의 맨 앞에 지정된 widget 를 삽입합니다.

참고: 위젯의 표시 여부를 변경하려면 ` 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 속성에 대한Notifier 신호입니다.

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

이 툴바를 표시하거나 숨기는 데 사용할 수 있는 checkable 액션이 반환됩니다.

이 액션의 텍스트는 툴바의 창 제목으로 설정됩니다.

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.