このページでは

QPinchGesture Class

QPinchGesture クラスは、ユーザーが行うピンチジェスチャーを表します。詳細...

ヘッダー: #include <QPinchGesture>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
継承元: QGesture

パブリック型

enum ChangeFlag { ScaleFactorChanged, RotationAngleChanged, CenterPointChanged }
flags ChangeFlags

プロパティ

公開関数

virtual ~QPinchGesture()
QPointF centerPoint() const
QPinchGesture::ChangeFlags changeFlags() const
QPointF lastCenterPoint() const
qreal lastRotationAngle() const
qreal lastScaleFactor() const
qreal rotationAngle() const
qreal scaleFactor() const
void setCenterPoint(const QPointF &value)
void setChangeFlags(QPinchGesture::ChangeFlags value)
void setLastCenterPoint(const QPointF &value)
void setLastRotationAngle(qreal value)
void setLastScaleFactor(qreal value)
void setRotationAngle(qreal value)
void setScaleFactor(qreal value)
void setStartCenterPoint(const QPointF &value)
void setTotalChangeFlags(QPinchGesture::ChangeFlags value)
void setTotalRotationAngle(qreal value)
void setTotalScaleFactor(qreal value)
QPointF startCenterPoint() const
QPinchGesture::ChangeFlags totalChangeFlags() const
qreal totalRotationAngle() const
qreal totalScaleFactor() const

詳細な説明

ピンチジェスチャーとは、ユーザーが通常、親指と人差し指で入力デバイスの2点をタッチし、それらを近づけたり離したりすることで、ユーザーインターフェースの拡大率、ズーム、または詳細レベルを変更するタッチ操作の一種です。

Qt におけるジェスチャ処理の概要およびアプリケーションでのジェスチャの使用方法については、『Qt Widgets およびグラフィックスビューにおけるジェスチャ』ドキュメントを参照してください。

2本の指を使ったピンチジェスチャーの実演

同じピンチジェスチャを繰り返し行う代わりに、ユーザーは入力デバイスの 1 箇所に指を置いたまま、別の場所に 2 番目の指を置いてジェスチャを継続することができます。この場合、ジェスチャイベントは引き続きターゲットオブジェクトに配信され、Qt::GestureUpdated 状態の QPinchGesture インスタンスが含まれます。

「 QPanGesture 」および「QSwipeGesture 」も参照してください 。

メンバ型のドキュメント

enum QPinchGesture::ChangeFlag
flags QPinchGesture::ChangeFlags

この列挙型は、ジェスチャーオブジェクトのプロパティに発生しうる変更を表します。

定数値説明
QPinchGesture::ScaleFactorChanged0x1scaleFactor が保持するスケール係数が変更されました。
QPinchGesture::RotationAngleChanged0x2rotationAngle が保持する回転角度が変更されました。
QPinchGesture::CenterPointChanged0x4centerPoint が保持する中心点が変更されました。

ChangeFlags 型は、QFlags<ChangeFlag> の typedef です。これは、ChangeFlag 値の OR 組み合わせを格納します。

changeFlags およびtotalChangeFlagsも参照してください 。

プロパティのドキュメント

centerPoint : QPointF

このプロパティは、現在の中心点を保持します

中心点は、ジェスチャーにおける2つの入力点の中間点です。

アクセス関数:

QPointF centerPoint() const
void setCenterPoint(const QPointF &value)

startCenterPoint およびlastCenterPointも参照してください 。

changeFlags : ChangeFlags

このプロパティには、現在のステップで変更されたジェスチャーのプロパティが格納されます

このプロパティは、前回のジェスチャーイベントにこのジェスチャーに関する情報が含まれていた時点以降、他のプロパティのうちどれが変更されたかを示します。この情報を使用して、ユーザーインターフェースのどの部分を更新する必要があるかを判断できます。

アクセス関数:

QPinchGesture::ChangeFlags changeFlags() const
void setChangeFlags(QPinchGesture::ChangeFlags value)

関連項目: totalChangeFlags 、scaleFactor 、rotationAngle 、およびcenterPoint 。

lastCenterPoint : QPointF

このプロパティには、このジェスチャーについて記録された中心点の最後の位置が格納されます

アクセス関数:

QPointF lastCenterPoint() const
void setLastCenterPoint(const QPointF &value)

関連項目: centerPoint およびstartCenterPoint 。

lastRotationAngle : qreal

このプロパティには、ジェスチャー動作によってカバーされた、最後に報告された角度が格納されます

最後の回転角度とは、このジェスチャーに対して前回のジェスチャーイベントが配信された際に、rotationAngle プロパティで報告された角度のことです。

アクセス関数:

qreal lastRotationAngle() const
void setLastRotationAngle(qreal value)

関連項目: ` rotationAngle ` および `totalRotationAngle`。

lastScaleFactor : qreal

このプロパティには、このジェスチャーについて最後に記録されたスケール係数が格納されます

最後のスケール係数には、以前のジェスチャーイベントにこのジェスチャーに関する情報が含まれていた際に、scaleFactor プロパティで報告されたスケール係数が格納されます。

このジェスチャーに関する情報を含む以前のイベントが配信されていない場合(つまり、このジェスチャーオブジェクトが、そのジェスチャーにおける最初の動きに関する情報を含む場合)、このプロパティにはゼロが格納されます。

アクセス関数:

qreal lastScaleFactor() const
void setLastScaleFactor(qreal value)

関連項目: scaleFactor およびtotalScaleFactor 。

rotationAngle : qreal

このプロパティは、ジェスチャー動作によってカバーされる角度を保持します

アクセス関数:

qreal rotationAngle() const
void setRotationAngle(qreal value)

関連項目: totalRotationAngle およびlastRotationAngle 。

scaleFactor : qreal

このプロパティには、現在のスケール係数が格納されます

スケール係数は、タッチデバイス上でユーザーが入力した2つの位置間の距離に関連するスケール係数を測定します。

アクセス関数:

qreal scaleFactor() const
void setScaleFactor(qreal value)

関連項目: totalScaleFactor およびlastScaleFactor 。

startCenterPoint : QPointF

このプロパティは、中心点の開始位置を保持します

アクセス関数:

QPointF startCenterPoint() const
void setStartCenterPoint(const QPointF &value)

centerPoint およびlastCenterPointも参照してください 。

totalChangeFlags : ChangeFlags

このプロパティには、変更があったジェスチャーのプロパティが格納されます

このプロパティは、ジェスチャーの開始以降、他のプロパティのうちどれが変更されたかを示します。この情報を使用して、ユーザーインターフェースのどの部分を更新する必要があるかを判断できます。

アクセス関数:

QPinchGesture::ChangeFlags totalChangeFlags() const
void setTotalChangeFlags(QPinchGesture::ChangeFlags value)

関連項目: changeFlags 、scaleFactor 、rotationAngle 、およびcenterPoint 。

totalRotationAngle : qreal

このプロパティには、ジェスチャーによってカバーされる合計角度が格納されます

この「総角度」は、ジェスチャーによってカバーされた角度の合計を測定します。通常、これはrotationAngle プロパティが保持する値と等しくなりますが、前述のように、ユーザーがタッチポイントの1つを一度外して再配置することで複数の回転を行った場合は例外となります。この場合、総角度はジェスチャーの各段階における回転角度の合計となります。

アクセス関数:

qreal totalRotationAngle() const
void setTotalRotationAngle(qreal value)

関連項目: rotationAngle およびlastRotationAngle 。

totalScaleFactor : qreal

このプロパティには、合計スケール係数が格納されます

総スケール係数は、元の値から現在のスケール係数までのスケール係数の総変化量を測定します。

アクセス関数:

qreal totalScaleFactor() const
void setTotalScaleFactor(qreal value)

関連項目: scaleFactor およびlastScaleFactor 。

メンバ関数のドキュメント

[virtual noexcept] QPinchGesture::~QPinchGesture()

デストラクタ。

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