QButtonGroup Class
QButtonGroup 클래스는 버튼 위젯 그룹을 구성하기 위한 컨테이너를 제공합니다. 더 보기...
| 헤더: | #include <QButtonGroup> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 상속: | QObject |
속성
- exclusive : bool
공개 함수
| QButtonGroup(QObject *parent = nullptr) | |
| virtual | ~QButtonGroup() |
| void | addButton(QAbstractButton *button, int id = -1) |
| QAbstractButton * | button(int id) const |
| QList<QAbstractButton *> | buttons() const |
| QAbstractButton * | checkedButton() const |
| int | checkedId() const |
| bool | exclusive() const |
| int | id(QAbstractButton *button) const |
| void | removeButton(QAbstractButton *button) |
| void | setExclusive(bool) |
| void | setId(QAbstractButton *button, int id) |
신호
| void | buttonClicked(QAbstractButton *button) |
| void | buttonPressed(QAbstractButton *button) |
| void | buttonReleased(QAbstractButton *button) |
| void | buttonToggled(QAbstractButton *button, bool checked) |
| void | idClicked(int id) |
| void | idPressed(int id) |
| void | idReleased(int id) |
| void | idToggled(int id, bool checked) |
상세 설명
QButtonGroup은 버튼 위젯을 배치할 수 있는 추상 컨테이너를 제공합니다. 이 컨테이너를 시각적으로 표시하지는 않지만(컨테이너 위젯에 대해서는 QGroupBox 을 참조하십시오), 대신 그룹 내 각 버튼의 상태를 관리합니다.
exclusive 버튼 그룹은 클릭된 버튼을 제외한 모든 체크 가능(토글) 버튼을 비활성화합니다. 기본적으로 버튼 그룹은 배타적입니다. 버튼 그룹에 포함된 버튼은 일반적으로 체크 가능한 QPushButton, QCheckBox(일반적으로 비배타적 버튼 그룹용), 또는 QRadioButton입니다. 배타적 버튼 그룹을 생성하는 경우, 그룹 내 버튼 중 하나가 처음에 체크되어 있는지 확인해야 합니다. 그렇지 않으면 그룹은 처음에 어떤 버튼도 체크되지 않은 상태가 됩니다.
addButton()을 사용하여 그룹에 버튼을 추가하고, removeButton()을 사용하여 제거할 수 있습니다. 그룹이 배타적인 경우, checkedButton()을 통해 현재 선택된 버튼을 확인할 수 있습니다. 버튼이 클릭되면 buttonClicked() 신호가 발생하며, 배타적인 그룹 내의 선택 가능한 버튼의 경우 이는 해당 버튼이 선택되었음을 의미합니다. 그룹 내 버튼 목록은 ` buttons()`를 통해 반환됩니다.
또한, QButtonGroup은 정수와 버튼 간의 매핑을 수행할 수 있습니다. setId()을 사용하여 버튼에 정수 ID를 할당할 수 있으며, id()을 통해 이를 가져올 수 있습니다. 현재 선택된 버튼의 ID는 checkedId()을 통해 확인할 수 있으며, 해당 버튼의 ID를 발산하는 idClicked() 신호가 있습니다. -1 ID는 QButtonGroup에서 “해당 버튼 없음”을 의미하도록 예약되어 있습니다. 매핑 메커니즘의 목적은 사용자 인터페이스에서 열거형 값의 표현을 단순화하는 것입니다.
QGroupBox, QPushButton, QCheckBox 및 QRadioButton도 참조하십시오 .
속성 문서
exclusive : bool
이 속성은 버튼 그룹이 배타적인지 여부를 나타냅니다.
이 속성이 ` true`인 경우, 그룹 내에서는 언제든 하나의 버튼만 선택될 수 있습니다. 사용자는 아무 버튼이나 클릭하여 선택할 수 있으며, 해당 버튼이 그룹 내 기존 선택된 버튼을 대체하게 됩니다.
배타적 그룹에서는 사용자가 현재 선택된 버튼을 클릭하여 선택을 해제할 수 없으며, 대신 그룹 내의 다른 버튼을 클릭해야만 해당 그룹의 새로운 선택 버튼을 설정할 수 있습니다.
기본적으로 이 속성은 ' true'입니다.
Access 함수:
| bool | exclusive() const |
| void | setExclusive(bool) |
멤버 함수 설명서
[explicit] QButtonGroup::QButtonGroup(QObject *parent = nullptr)
지정된 parent 를 사용하여 새 빈 버튼 그룹을 생성합니다.
addButton() 및 setExclusive()도 참조하십시오 .
[virtual noexcept] QButtonGroup::~QButtonGroup()
버튼 그룹을 삭제합니다.
void QButtonGroup::addButton(QAbstractButton *button, int id = -1)
지정된 button 를 버튼 그룹에 추가합니다. id 가 -1인 경우, 버튼에 ID가 할당됩니다. 자동으로 할당되는 ID는 -2부터 시작하는 음수 값임을 보장합니다. 직접 ID를 할당하는 경우, 충돌을 방지하기 위해 양수 값을 사용하십시오.
removeButton() 및 buttons()도 참조하십시오 .
QAbstractButton *QButtonGroup::button(int id) const
지정된 id 을 가진 버튼을 반환하거나, 해당 버튼이 존재하지 않을 경우 nullptr 을 반환합니다.
[signal] void QButtonGroup::buttonClicked(QAbstractButton *button)
이 신호는 지정된 button 이 클릭될 때 발생합니다. 버튼은 처음 눌렸다가 놓였을 때, 단축키가 입력되었을 때, 또는 QAbstractButton::click()이나 QAbstractButton::animateClick()이 프로그래밍 방식으로 호출되었을 때 클릭된 것으로 간주됩니다.
checkedButton() 및 QAbstractButton::clicked()도 참조하십시오 .
[signal] void QButtonGroup::buttonPressed(QAbstractButton *button)
이 신호는 지정된 ‘ button ’ 버튼이 눌려졌을 때 발생합니다.
QAbstractButton::pressed()도 참조하십시오 .
[signal] void QButtonGroup::buttonReleased(QAbstractButton *button)
이 신호는 지정된 button 가 해제될 때 발생합니다.
QAbstractButton::released()도 참조하십시오 .
[signal] void QButtonGroup::buttonToggled(QAbstractButton *button, bool checked)
이 신호는 지정된 ‘ button ’가 토글될 때 발생합니다. ‘ checked ’는 버튼이 선택된 경우 true를, 선택되지 않은 경우 false를 반환합니다.
QAbstractButton::toggled()도 참조하십시오 .
QList<QAbstractButton *> QButtonGroup::buttons() const
버튼 그룹에 포함된 버튼 목록을 반환합니다. 이 목록은 비어 있을 수도 있습니다.
addButton() 및 removeButton()도 참조하십시오 .
QAbstractButton *QButtonGroup::checkedButton() const
버튼 그룹에서 선택된 버튼을 반환하거나, 선택된 버튼이 없는 경우 ` nullptr `를 반환합니다.
buttonClicked()도 참조하십시오 .
int QButtonGroup::checkedId() const
checkedButton()의 ID를 반환하거나, 선택된 버튼이 없는 경우 -1을 반환합니다.
setId()도 참조하십시오 .
int QButtonGroup::id(QAbstractButton *button) const
지정된 button 의 ID를 반환하거나, 해당 버튼이 존재하지 않으면 -1을 반환합니다.
setId()도 참조하십시오 .
[signal] void QButtonGroup::idClicked(int id)
이 신호는 지정된 id 을 가진 버튼이 클릭될 때 발생합니다.
checkedButton() 및 QAbstractButton::clicked()도 참조하십시오 .
[signal] void QButtonGroup::idPressed(int id)
이 신호는 지정된 id 를 가진 버튼이 눌렸을 때 발생합니다.
QAbstractButton::pressed()도 참조하십시오 .
[signal] void QButtonGroup::idReleased(int id)
이 신호는 지정된 id 를 가진 버튼이 놓일 때 발생합니다.
QAbstractButton::released()도 참조하십시오 .
[signal] void QButtonGroup::idToggled(int id, bool checked)
이 신호는 지정된 ‘ id ’ 속성을 가진 버튼이 토글될 때 발생합니다. ‘ checked ’는 버튼이 선택된 경우 true를, 선택되지 않은 경우 false를 반환합니다.
QAbstractButton::toggled()도 참조하십시오 .
void QButtonGroup::removeButton(QAbstractButton *button)
지정된 button 를 버튼 그룹에서 제거합니다.
addButton() 및 buttons()도 참조하십시오 .
void QButtonGroup::setId(QAbstractButton *button, int id)
지정된 button 에 대한 id 를 설정합니다. id 는 -1일 수 없다는 점에 유의하십시오.
id()도 참조하십시오 .
© 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.