QVirtualKeyboardTrace Class
Trace는 터치 입력 데이터를 위한 데이터 모델입니다. 더 보기...
| 헤더: | #include <QVirtualKeyboardTrace> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard) target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard) |
| qmake: | QT += virtualkeyboard |
| 다음부터: | QtQuick.VirtualKeyboard 2.0 |
| QML에서: | Trace |
| 상속: | QObject |
속성
공개 함수
| int | addPoint(const QPointF &point) |
| QVariantList | channelData(const QString &channel, int pos = 0, int count = -1) const |
| QStringList | channels() const |
| bool | isCanceled() const |
| bool | isFinal() const |
| int | length() const |
| qreal | opacity() const |
| QVariantList | points(int pos = 0, int count = -1) const |
| void | setCanceled(bool canceled) |
| void | setChannelData(const QString &channel, int index, const QVariant &data) |
| void | setChannels(const QStringList &channels) |
| void | setFinal(bool final) |
| void | setOpacity(qreal opacity) |
| void | setTraceId(int id) |
(since 6.1) void | startHideTimer(int delayMs) |
| int | traceId() const |
신호
| void | canceledChanged(bool isCanceled) |
| void | channelsChanged() |
| void | finalChanged(bool isFinal) |
| void | lengthChanged(int length) |
| void | opacityChanged(qreal opacity) |
| void | traceIdChanged(int traceId) |
상세 설명
Trace는 단일 스트로크와 관련된 좌표 데이터 및 기타 선택적 데이터에 대한 데이터 모델을 제공합니다.
trace 객체의 일반적인 사용 사례는 다음과 같습니다.
- TraceInputArea 또는 기타 입력 장치는 ` InputEngine.traceBegin()` 메서드를 호출하여 트레이스 이벤트를 시작합니다.
- 현재 입력 방식이 이 이벤트를 수락하면 트레이스 객체를 생성하고 필요한 데이터 채널(있는 경우)을 구성합니다.
- TraceInputArea Trace 객체에 대한 데이터를 수집합니다.
- TraceInputArea InputEngine.traceEnd() 메서드를 호출하여 추적을 종료하고, 트레이스 객체를 입력 메서드로 다시 전달합니다.
- 입력 메서드는 데이터를 처리하고, 더 이상 필요하지 않으면 객체를 폐기합니다.
좌표 데이터는 points() 함수를 사용하여 검색됩니다.
좌표 기반 데이터 외에도 각 데이터 포인트에 임의의 데이터 채널을 연결할 수 있습니다.
데이터 채널은 데이터 포인트를 추가하기 전에 정의해야 합니다. TraceInputArea 에서 지원하는 데이터 채널은 다음과 같습니다:
"t"각 데이터 포인트의 시간을 수집합니다. 시간은 1970년 1월 1일 이후 경과한 밀리초 수입니다:
예를 들어, 각 데이터 포인트의 시간을 수집하도록 객체를 구성하려면 다음과 같이 합니다:
QVirtualKeyboardTrace *trace = new QVirtualKeyboardTrace(this);
trace->setChannels(QStringList() << "t");수집된 데이터는 channelData() 함수를 사용하여 액세스할 수 있습니다:
QVariantList timeData = trace->channelData("t");QVirtualKeyboardTrace 객체는 생성자(일반적인 경우 입력 방식)가 소유합니다. 즉, 객체는 InputMethod.traceBegin() (QML) 메서드에서 생성됩니다.
정의에 따라, 추적 객체는 가장 빠르면 InputMethod.traceEnd() (QML) 메서드에서 소멸될 수 있습니다.
속성 설명서
canceled : bool
QVirtualKeyboardTrace 가 취소되었는지 여부를 지정합니다.
canceled 속성이 true로 설정된 추적(Traces)의 입력 데이터는 처리되어서는 안 됩니다.
액세스 함수:
| bool | isCanceled() const |
| void | setCanceled(bool canceled) |
알림 신호:
| void | canceledChanged(bool isCanceled) |
channels : QStringList
QQTrace의 데이터 채널 목록.
이 속성은 데이터를 추가하기 전에 초기화해야 합니다.
액세스 함수:
| QStringList | channels() const |
| void | setChannels(const QStringList &channels) |
알림 신호:
| void | channelsChanged() |
final : bool
QVirtualKeyboardTrace 가 더 많은 데이터를 수신할 수 있는지 여부를 정의합니다. 값이 ` true`인 경우, 더 이상 데이터를 수신하지 않습니다.
액세스 함수:
| bool | isFinal() const |
| void | setFinal(bool final) |
알림 신호:
| void | finalChanged(bool isFinal) |
[read-only] length : int
이 속성은 ` QVirtualKeyboardTrace`에 포함된 점의 개수를 나타냅니다.
액세스 함수:
| int | length() const |
알림 신호:
| void | lengthChanged(int length) |
opacity : qreal
이 속성은 QVirtualKeyboardTrace 의 불투명도를 결정합니다.
값이 낮을수록 트레이스가 더 투명해집니다. 즉, ` 0.0 `는 완전히 투명하고, ` 1.0 `는 완전히 불투명합니다.
이 속성은 새로운 트레이스가 추가됨에 따라 기존 트레이스의 투명도를 높이는 데 유용합니다.
액세스 함수:
| qreal | opacity() const |
| void | setOpacity(qreal opacity) |
알림 신호:
| void | opacityChanged(qreal opacity) |
traceId : int
이 QVirtualKeyboardTrace 의 고유 ID입니다.
액세스 기능:
| int | traceId() const |
| void | setTraceId(int id) |
알림 신호:
| void | traceIdChanged(int traceId) |
멤버 함수 문서
[invokable] int QVirtualKeyboardTrace::addPoint(const QPointF &point)
QVirtualKeyboardTrace 에 point 를 추가합니다.
이 메서드는 추가된 점의 인덱스를 반환하며, 점을 추가할 수 없는 경우(즉, ` final `가 true인 경우)에는 -1을 반환합니다.
참고: 반환된인덱스는 ` setChannelData()` 메서드를 사용하여 점에 추가 데이터를 연결하는 데 필요합니다.
참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.
[invokable] QVariantList QVirtualKeyboardTrace::channelData(const QString &channel, int pos = 0, int count = -1) const
지정된 ` channel`에서 데이터를 반환합니다. 다른 매개변수가 주어지지 않으면, 이 메서드는 모든 데이터를 반환합니다.
pos 매개변수가 지정된 경우, 이 메서드는 해당 위치부터 시작하는 데이터를 반환합니다. count 매개변수는 반환되는 항목의 수를 제한합니다.
참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.
setChannelData()도 참조하십시오 .
[invokable] QVariantList QVirtualKeyboardTrace::points(int pos = 0, int count = -1) const
점의 목록을 반환합니다. 매개변수가 지정되지 않으면 이 메서드는 모든 데이터를 반환합니다.
pos 매개변수가 지정되면, 이 메서드는 해당 위치부터 시작하는 점들을 반환합니다. count 매개변수는 반환되는 점의 개수를 제한합니다.
반환된 리스트에는 QPointF 유형이 포함됩니다.
참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.
[invokable] void QVirtualKeyboardTrace::setChannelData(const QString &channel, int index, const QVariant &data)
주어진 데이터 channel 에서 index 에 위치한 데이터 포인트에 대해 ` data `를 설정합니다.
각 데이터 포인트에 대해 이 메서드가 호출되지 않으면, 채널 데이터는 빈 값으로 채워집니다. 그러나 데이터를 임의의 인덱스에 추가할 수는 없으며, 즉 포인트 데이터와 동기화되어 추가되어야 합니다.
참고: 이 함수는 메타 객체 시스템 및 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.
channelData()도 참조하십시오 .
[invokable, since 6.1] void QVirtualKeyboardTrace::startHideTimer(int delayMs)
delayMs 가 지난 후 불투명도를 0으로 설정하도록 타이머를 시작합니다. delayMs 기간 내에 이 함수가 다시 호출되면 타이머가 다시 시작됩니다.
이 함수를 사용하면 입력 방식에서 트레이스 객체를 소멸하기 전에 화면에서 트레이스를 숨길 수 있습니다. 예를 들어, 트레이스가 처리되었음을 나타내기 위함입니다.
참고: 이 함수는 메타 객체 시스템과 QML을 통해 호출할 수 있습니다. Q_INVOKABLE 를 참조하십시오.
이 함수는 Qt 6.1에서 도입되었습니다.
© 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.