QSlider Class
QSlider 위젯은 세로 또는 가로 슬라이더를 제공합니다. 더 보기...
| 헤더: | #include <QSlider> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| 상속: | QAbstractSlider |
공개 유형
| enum | TickPosition { NoTicks, TicksBothSides, TicksAbove, TicksBelow, TicksLeft, TicksRight } |
속성
- tickInterval : int
- tickPosition : TickPosition
공개 함수
| QSlider(QWidget *parent = nullptr) | |
| QSlider(Qt::Orientation orientation, QWidget *parent = nullptr) | |
| virtual | ~QSlider() |
| void | setTickInterval(int ti) |
| void | setTickPosition(QSlider::TickPosition position) |
| int | tickInterval() const |
| QSlider::TickPosition | tickPosition() const |
재구현된 공용 함수
| virtual bool | event(QEvent *event) override |
| virtual QSize | minimumSizeHint() const override |
| virtual QSize | sizeHint() const override |
보호된 함수
| virtual void | initStyleOption(QStyleOptionSlider *option) const |
재구현된 보호된 함수
| virtual void | mouseMoveEvent(QMouseEvent *ev) override |
| virtual void | mousePressEvent(QMouseEvent *ev) override |
| virtual void | mouseReleaseEvent(QMouseEvent *ev) override |
| virtual void | paintEvent(QPaintEvent *ev) override |
상세 설명

슬라이더는 제한된 값을 제어하기 위한 대표적인 위젯입니다. 사용자가 수평 또는 수직 홈을 따라 슬라이더 핸들을 이동할 수 있게 하며, 핸들의 위치를 허용 범위 내의 정수 값으로 변환합니다.
QSlider는 자체 함수가 거의 없으며, 대부분의 기능은 QAbstractSlider 에 있습니다. 가장 유용한 함수는 슬라이더를 특정 값으로 직접 설정하는 setValue(), 클릭 효과를 시뮬레이션하는 triggerAction()(단축키에 유용함), 단계 설정을 위한 setSingleStep(), setPageStep()는 단계(step)를 설정하는 데 사용되며, setMinimum()와 setMaximum()는 스크롤바의 범위를 정의하는 데 사용됩니다.
QSlider는 눈금(tickmark)을 제어하는 메서드를 제공합니다. setTickPosition()을 사용하여 눈금이 표시될 위치를 지정하고, setTickInterval()을 사용하여 눈금의 개수를 지정할 수 있습니다. 현재 설정된 눈금 위치와 간격은 각각 tickPosition() 및 tickInterval() 함수를 사용하여 조회할 수 있습니다.
QSlider는 다음과 같은 포괄적인 신호 집합을 상속받습니다:
| 신호 | 설명 |
|---|---|
| valueChanged() | 슬라이더의 값이 변경되었을 때 발생합니다. tracking()은 사용자 상호작용 중에 이 신호가 발생할지 여부를 결정합니다. |
| sliderPressed() | 사용자가 슬라이더를 드래그하기 시작할 때 발생합니다. |
| sliderMoved() | 사용자가 슬라이더를 드래그할 때 발생합니다. |
| sliderReleased() | 사용자가 슬라이더를 놓을 때 발생합니다. |
QSlider는 정수 범위만 제공합니다. QSlider는 매우 큰 숫자도 처리할 수 있지만, 범위가 너무 넓을 경우 사용자가 슬라이더를 정확하게 조작하기 어려워질 수 있다는 점에 유의하십시오.
슬라이더는 Tab 키를 통해 포커스를 받을 수 있으며, 마우스 휠과 키보드 인터페이스를 모두 제공합니다. 키보드 인터페이스는 다음과 같습니다:
- 왼쪽/오른쪽 키: 수평 슬라이더를 한 단계씩 이동합니다.
- 위/아래 키는 수직 슬라이더를 한 단계씩 이동시킵니다.
- PageUp 키를 누르면 한 페이지 위로 이동합니다.
- PageDown 키를 누르면 한 페이지 아래로 이동합니다.
- Home 키를 누르면 시작 위치(최소값)로 이동합니다.
- End는 끝(최대)으로 이동합니다.
QScrollBar, QSpinBox, QDial 및 슬라이더 예제도참조하십시오 .
멤버 유형 문서
enum QSlider::TickPosition
이 열거형은 슬라이더의 홈과 사용자가 이동하는 핸들을 기준으로 눈금이 그려질 위치를 지정합니다.
| 상수 | 값 | 설명 |
|---|---|---|
QSlider::NoTicks | 0 | 눈금을 그리지 않습니다. |
QSlider::TicksBothSides | 3 | 홈의 양쪽에 눈금을 그립니다. |
QSlider::TicksAbove | 1 | (수평) 슬라이더 위에 눈금을 그립니다. |
QSlider::TicksBelow | 2 | (수평) 슬라이더 아래에 눈금을 그립니다. |
QSlider::TicksLeft | TicksAbove | (수직) 슬라이더 왼쪽에 눈금을 그립니다. |
QSlider::TicksRight | TicksBelow | (수직) 슬라이더 오른쪽에 눈금을 그립니다. |
속성 설명서
tickInterval : int
이 속성은 눈금 사이의 간격을 지정합니다.
이는 픽셀 간격이 아닌 값 간격입니다. 이 값이 ` 0`인 경우, 슬라이더는 `singleStep`과 `pageStep` 중에서 선택합니다.
기본값은 ` 0`입니다. 음수 값은 유효하지 않으므로 ` 0`으로 제한됩니다.
액세스 함수:
| int | tickInterval() const |
| void | setTickInterval(int ti) |
tickPosition, singleStep 및 pageStep도 참조하십시오 .
tickPosition : TickPosition
이 속성은 해당 슬라이더의 눈금 위치를 저장합니다.
유효한 값은 QSlider::TickPosition 열거형에 정의되어 있습니다.
기본값은 ` QSlider::NoTicks`입니다.
액세스 함수:
| QSlider::TickPosition | tickPosition() const |
| void | setTickPosition(QSlider::TickPosition position) |
tickInterval도 참조하십시오 .
멤버 함수 설명서
[explicit] QSlider::QSlider(QWidget *parent = nullptr)
지정된 ` parent`을 사용하여 세로 슬라이더를 생성합니다.
[explicit] QSlider::QSlider(Qt::Orientation orientation, QWidget *parent = nullptr)
지정된 ` parent`을 사용하여 슬라이더를 생성합니다. ` orientation ` 매개변수는 슬라이더가 가로 방향인지 세로 방향인지 결정하며, 유효한 값은 ` Qt::Vertical ` 및 ` Qt::Horizontal`입니다.
[virtual noexcept] QSlider::~QSlider()
이 슬라이더를 제거합니다.
[override virtual] bool QSlider::event(QEvent *event)
QAbstractSlider::event(QEvent *e)를 재구현합니다.
[virtual protected] void QSlider::initStyleOption(QStyleOptionSlider *option) const
option 를 QSlider 에 있는 값들로 초기화합니다. 이 방법은 하위 클래스에서 QStyleOptionSlider 가 필요하지만, 모든 정보를 직접 입력하고 싶지 않을 때 유용합니다.
QStyleOption::initFrom()도 참조하십시오 .
[override virtual] QSize QSlider::minimumSizeHint() const
QWidget::minimumSizeHint 속성에 대한 액세스 함수를 재구현합니다.
[override virtual protected] void QSlider::mouseMoveEvent(QMouseEvent *ev)
QWidget::mouseMoveEvent(QMouseEvent *event)를 재구현합니다.
[override virtual protected] void QSlider::mousePressEvent(QMouseEvent *ev)
QWidget::mousePressEvent(QMouseEvent *event)를 재구현합니다.
[override virtual protected] void QSlider::mouseReleaseEvent(QMouseEvent *ev)
QWidget::mouseReleaseEvent(QMouseEvent *event)를 재구현합니다.
[override virtual protected] void QSlider::paintEvent(QPaintEvent *ev)
QWidget::paintEvent(QPaintEvent *event)를 재구현합니다.
[override virtual] QSize QSlider::sizeHint() const
QWidget::sizeHint 속성에 대한 액세스 함수를 재구현합니다.
© 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.