이 페이지에서

QTabletEvent Class

QTabletEvent 클래스에는 태블릿 이벤트를 설명하는 매개변수들이 포함되어 있습니다. 더 보기...

헤더: #include <QTabletEvent>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
상속: QSinglePointEvent

공개 함수

QTabletEvent(QEvent::Type type, const QPointingDevice *dev, const QPointF &pos, const QPointF &globalPos, qreal pressure, float xTilt, float yTilt, float tangentialPressure, qreal rotation, float z, Qt::KeyboardModifiers keyState, Qt::MouseButton button, Qt::MouseButtons buttons)
qreal pressure() const
qreal rotation() const
qreal tangentialPressure() const
qreal xTilt() const
qreal yTilt() const
qreal z() const

보호된 함수

QTabletEvent(QTabletEvent &&)
QTabletEvent &operator=(QTabletEvent &&)
QTabletEvent &operator=(const QTabletEvent &other)

상세 설명

태블릿 이벤트는 Wacom 태블릿 및 기타 다양한 브랜드의 태블릿 주변 장치와, 일부 태블릿 컴퓨터에 포함된 전자기식 스타일러스 장치에서 생성됩니다. (터치스크린에서 수동형 스타일러스를 사용하는 경우에도 터치스크린에서 생성되는 터치 이벤트( QTouchEvent )와는 다릅니다.)

태블릿 이벤트는 마우스 이벤트와 유사합니다. 예를 들어, x(), y(), pos(), globalX(), globalY() 및 globalPos() 액세서리는 커서 위치를 제공하며, buttons()를 통해 누른 버튼(태블릿 표면에 스타일러스 끝을 누르는 것은 마우스 왼쪽 버튼을 누르는 것과 동일함)을 확인할 수 있습니다. 하지만 태블릿 이벤트에는 태블릿 장치 드라이버가 제공하는 추가 정보도 함께 전달됩니다. 예를 들어, 더 높은 해상도의 좌표(globalPosF())를 사용하여 서브픽셀 렌더링을 수행하거나, 태블릿 표면에 대한 도구의 기울기( pressure())에 따라 색상 밝기를 조정하거나, 사용 중인 도구의 유형에 따라 다른 브러시를 사용하거나(deviceType()), 태블릿 표면에 대한 도구의 X축 및 Y축 기울기에 따라 브러시 모양을 어떤 방식으로든 조절하거나(xTilt() 및 yTilt()), 사용자가 양면 스타일러스의 반대쪽 끝으로 전환할 경우 브러시 대신 가상 지우개를 사용할 수도 있습니다(pointerType()).

모든 이벤트에는 수신자가 해당 이벤트를 수신할지 여부를 나타내는 수락 플래그가 포함되어 있습니다. 태블릿 이벤트를 처리할 경우 QTabletEvent::accept()를 호출해야 하며, 그렇지 않으면 이벤트가 상위 위젯으로 전달됩니다. 단, TabletEnterProximity 및 TabletLeaveProximity 이벤트는 예외입니다. 이 이벤트들은 QApplication 로만 전송되며, 수락 여부를 확인하지 않습니다.

QWidget::setEnabled() 함수는 위젯에 대한 마우스, 태블릿 및 키보드 이벤트를 활성화하거나 비활성화하는 데 사용할 수 있습니다.

QWidget::tabletEvent() 이벤트 핸들러는 TabletPress, TabletRelease 및 TabletMove 이벤트를 수신합니다. Qt는 먼저 태블릿 이벤트를 전송하고, 어떤 위젯도 이를 수락하지 않으면 마우스 이벤트를 전송합니다. 이를 통해 태블릿용으로 설계되지 않은 애플리케이션의 사용자도 태블릿을 마우스처럼 사용할 수 있습니다. 그러나 고해상도 드로잉 애플리케이션의 경우 태블릿 이벤트를 직접 처리해야 합니다. 태블릿 이벤트는 더 높은 빈도로 발생할 수 있으며, 이는 부드럽고 정확한 드로잉에 유리하기 때문입니다. 태블릿 이벤트가 거부될 경우, 효율성을 위해 합성 마우스 이벤트가 압축될 수 있습니다.

스타일러스가 태블릿 위에 떠 있는 상태에서 스타일러스 버튼을 누르면, 일부 유형의 태블릿에서는 버튼 누름 이벤트가 발생하지만, 다른 유형의 태블릿에서는 스타일러스 버튼 누름을 동시에 인식하기 위해 스타일러스를 태블릿 표면에 눌러야 할 수도 있습니다.

X11 사용자 참고 사항

xorg.conf에서 태블릿이 Wacom 드라이버를 사용하도록 구성되어 있다면, 스타일러스, 지우개, 그리고 (선택 사항인) 커서 및 터치패드에 대해 별도의 XInput “장치”가 생성됩니다. Qt는 이름에 따라 이를 인식합니다. 반면, 태블릿이 evdev 드라이버를 사용하도록 설정된 경우 단일 장치만 존재하며, 응용 프로그램에서 스타일러스와 지우개를 구분하지 못할 수 있습니다.

Windows 사용자 참고 사항

현재 태블릿을 지원하려면 DLL wintab32.dll 을 제공하는 WACOM Windows 드라이버가 설치되어 있어야 합니다. 이 드라이버는 이전 패키지(예: pentablet_5.3.5-3.exe)에 포함되어 있습니다.

멤버 함수 설명서

QTabletEvent::QTabletEvent(QEvent::Type type, const QPointingDevice *dev, const QPointF &pos, const QPointF &globalPos, qreal pressure, float xTilt, float yTilt, float tangentialPressure, qreal rotation, float z, Qt::KeyboardModifiers keyState, Qt::MouseButton button, Qt::MouseButtons buttons)

주어진 ` type`에 대한 태블릿 이벤트를 생성합니다.

pos 매개변수는 위젯 내에서 이벤트가 발생한 위치를 나타내며, globalPos 는 절대 좌표계에서 이에 해당하는 위치입니다.

pressure dev 는 기기에 가해진 압력을 나타냅니다.

xTilt 및 yTilt 는 각각 x축과 y축을 기준으로 한 기기의 기울기 각도를 나타냅니다.

keyState 는 어떤 키보드 수정 키가 눌려 있는지 지정합니다(예: Ctrl).

z 매개변수는 태블릿 상에서 장치의 Z 좌표를 나타내며, 이는 일반적으로 4D 마우스의 휠을 통해 제공됩니다. 장치가 Z축을 지원하지 않는 경우(즉, QPointingDevice::capabilities()에 ZPosition 가 포함되지 않은 경우), 여기에 0 를 전달하십시오.

tangentialPressure 매개변수는 에어브러시의 접선 방향 압력 썸휠 값을 반환합니다. 장치가 접선 방향 압력을 지원하지 않는 경우(즉, QPointingDevice::capabilities()에 TangentialPressure 가 포함되지 않은 경우), 여기에 0 를 전달하십시오.

rotation 장치의 회전 각도를 도(°) 단위로 반환합니다. 4D 마우스, Wacom Art Pen 및 Apple Pencil은 회전 기능을 지원합니다. 장치가 회전 기능을 지원하지 않는 경우(즉, ` QPointingDevice::capabilities()`에 ` Rotation`가 포함되지 않은 경우), 여기에 ` 0 `를 전달하십시오.

이벤트를 유발한 button 는 Qt::MouseButton 열거형의 값으로 제공됩니다. 이벤트 type 가 TabletPress 또는 TabletRelease 가 아닌 경우, 이 이벤트에 해당하는 버튼은 Qt::NoButton 입니다.

buttons 는 이벤트 발생 시점의 모든 버튼의 상태를 나타냅니다.

pos(), globalPos(), device(), pressure(), xTilt(), yTilt(), uniqueId(), rotation(), tangentialPressure(), z()도 참조하십시오.

[protected delete] QTabletEvent::QTabletEvent(QTabletEvent &&)

QTabletEvent 의 인스턴스를 move-construct로 생성합니다. 이 함수는 삭제되었습니다.

qreal QTabletEvent::pressure() const

장치의 압력 값을 반환합니다. 0.0은 스타일러스가 태블릿 위에 놓여 있지 않음을 나타내고, 1.0은 스타일러스의 최대 압력 값을 나타냅니다.

tangentialPressure()도 참조하십시오 .

qreal QTabletEvent::rotation() const

현재 도구의 회전 각도를 도(°) 단위로 반환합니다. 0은 스타일러스 끝이 태블릿 상단을 향하고 있음을, 양수 값은 오른쪽으로 회전되어 있음을, 음수 값은 왼쪽으로 회전되어 있음을 의미합니다. 이 값은 4D 마우스나 회전 기능을 지원하는 스타일러스(예: Wacom Art Pen 또는 Apple Pencil)를 통해 제공될 수 있습니다. 장치가 회전 기능을 지원하지 않는 경우, 이 값은 항상 0.0입니다.

qreal QTabletEvent::tangentialPressure() const

장치의 접선 압력을 반환합니다. 이는 일반적으로 에어브러시 도구의 핑거 휠을 통해 설정됩니다. 범위는 -1.0에서 1.0까지입니다. 0.0은 중립 위치를 나타냅니다. 현재의 에어브러시는 중립 위치에서 양의 방향으로만 이동할 수 있습니다. 기기가 접선 압력을 지원하지 않는 경우, 이 값은 항상 0.0입니다.

참고: 이 값은 단정밀도 부동소수점으로 저장됩니다.

pressure()도 참조하십시오 .

qreal QTabletEvent::xTilt() const

장치(예: 펜)와 x축 방향의 수직선 사이의 각도를 반환합니다. 양수 값은 태블릿의 물리적 오른쪽 방향을 가리킵니다. 각도의 범위는 -60도에서 +60도입니다.

3차원 좌표계에서 기울어져 있는 장치의 도면

참고: 이 값은 단정밀도 부동소수점으로 저장됩니다.

yTilt()도 참조하십시오 .

qreal QTabletEvent::yTilt() const

장치(예: 펜)와 y축 방향의 수직선 사이의 각도를 반환합니다. 양수 값은 태블릿의 아래쪽을 향하는 각도를 나타냅니다. 각도의 범위는 -60도에서 +60도 사이입니다.

참고: 이 값은 단정밀도 부동소수점 숫자로 저장됩니다.

xTilt()도 참조하십시오 .

qreal QTabletEvent::z() const

장치의 Z축 위치를 반환합니다. 일반적으로 4D 마우스에서는 휠로 표현됩니다. 장치가 Z축을 지원하지 않는 경우, 이 값은 항상 0입니다. 이는 압력 값과는 다릅니다.

참고: 이 값은 단정밀도 부동소수점으로 저장됩니다.

pressure()도 참조하십시오 .

[protected delete] QTabletEvent &QTabletEvent::operator=(QTabletEvent &&)

other 를 이 QTabletEvent 인스턴스에 할당합니다. 이 함수는 삭제되었습니다.

[noexcept protected default] QTabletEvent &QTabletEvent::operator=(const QTabletEvent &other)

other 을 이 QTabletEvent 인스턴스에 복사-할당합니다.

© 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.