- class QPointingDevice#
类
QPointingDevice描述了一个设备,该设备产生鼠标、触摸或平板设备的事件。更多…摘要#
属性#
方法#
def
__init__()def
buttonCount()def
maximumPoints()def
__eq__()def
pointerType()def
setType()def
uniqueId()
信号#
静态函数#
注意
本文档可能包含自动从C++翻译到Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译存在问题,也可以在https:/bugreports.qt.io/projects/PYSIDE创建一个工单来解决。
详细说明#
每个
QPointerEvent都包含一个指向QPointingDevice的指针,以便访问设备特有的属性,如类型和能力。平台或通用插件需要在生成任何指针事件之前通过QWindowSystemInterface注册可用的指针设备。应用程序不需要实例化此类,只需要通过device()访问其指向的全局实例即可。- class PointerType#
(继承自:
enum.Flag)此枚举表示与指针设备交互的是什么。此属性与
DeviceType之间存在一些冗余。例如,如果使用了触摸屏,则DeviceType为TouchScreen和PointerType为Finger(总是)。但在数位板上,经常可以同时使用笔的两端,程序需要区分它们。因此,此概念被扩展,使得每个QPointerEvent都有一个PointerType,这可以简化一些事件处理代码,使得可以忽略DeviceType,只根据PointerType做出不同的反应。有效值
常量
描述
QPointingDevice.PointerType.Unknown
指针类型未知。
QPointingDevice.PointerType.Generic
鼠标或其他类似鼠标的设备(X11上的核心指针)。
QPointingDevice.PointerType.Finger
用户的指尖。
QPointingDevice.PointerType.Pen
笔尖的绘画端。
QPointingDevice.PointerType.Eraser
笔的另一端(如果另一端有一个虚拟橡皮擦)。
QPointingDevice.PointerType.Cursor
类似
Puck设备上的透明圆形十字准星。QPointingDevice.PointerType.AllPointerTypes
以上任何一种(用作默认过滤器值)。
- class GrabTransition#
此枚举表示从一个对象(可能为
nullptr)切换到另一个对象(可能为nullptr)的独占或被动捕获的转换。它作为grabChanged()信号的参数发出。有效值
常量
描述
QPointingDevice.GrabExclusive
在
setExclusiveGrabber()之后发出。QPointingDevice.UngrabExclusive
在将抓取器设置为
nullptr后,通过setExclusiveGrabber()发出,以通知已正常终止捕获。QPointingDevice.CancelGrabExclusive
在将抓取器设置为不同的对象后,通过
setExclusiveGrabber()发出,以通知旧抓取器的捕获被“窃取”。QPointingDevice.GrabPassive
在
addPassiveGrabber()之后发出。QPointingDevice.UngrabPassive
在正常终止被动捕获时发出,例如在
removePassiveGrabber()之后。QPointingDevice.CancelGrabPassive
在被动捕获异常终止(手势被取消)时发出。
QPointingDevice.OverrideGrabPassive
此值目前未使用。
注意
当使用
from __feature__ import true_property时可以直接使用属性;否则通过访问函数使用。- property buttonCount: int#
- 访问函数
- property maximumPoints: int#
- 访问函数
- property pointerType: QPointingDevice.PointerType#
- 访问函数
- property uniqueId: QPointingDeviceUniqueId#
- 访问函数
创建一个新的无效指针设备实例,作为
父对象的子对象。- __init__(name, systemId, devType, pType, caps, maxPoints, buttonCount[, seatName=""[, uniqueId=QPointingDeviceUniqueId()[, parent=None]]]])
- 参数:
name – str
systemId – int
devType –
DeviceTypepType –
PointerTypecaps – 由
Capability组成的组合maxPoints – int
buttonCount – int
seatName – str
uniqueId –
QPointingDeviceUniqueId父对象 –
QObject
创建一个新的拥有指定
name、deviceType、pointerType、capabilities、maxPoints、buttonCount、seatName、uniqueId和parent的指针设备实例。- buttonCount()#
- 返回类型::
int
返回设备上可检测的最大按钮数。
属性
buttonCount的获取器。- grabChanged(grabber, transition, event, point)#
- 参数:
grabber –
QObjecttransition –
GrabTransition事件 –
QPointerEvent点 –
QEventPoint
当在传递事件时,如果获取器(
grabber)对象对point获取了独占或被动捕获,或者失去了这个捕获,则会发出此信号。通过transition可以看出是发生了什么,这是从获取器对象的角度来看的。注意
一个从对象到另一个对象的获取器转换会产生两个信号,用于通知一个对象已经失去了其捕获,以及有另一个获取器。在另一些情况下,当转换到或从非捕获状态时,只会发出一个信号:
grabber参数永远不会是nullptr。- maximumPoints()#
- 返回类型::
int
返回可以检测到的最大同时触摸点(手指)数量。
属性
maximumPoints的获取器。- __eq__(other)#
- 参数:
other –
QPointingDevice- 返回类型::
bool
- pointerType()#
- 返回类型::
返回指针类型。
属性
pointerType的获取器。- static primaryPointingDevice([seatName=""])#
- 参数:
seatName – str
- 返回类型::
返回特定座席
seatName上的主要指向设备(核心指向设备,传统上假设是鼠标)。如果有多个指点设备注册,此函数更倾向于使用与给定
seatName匹配且没有其他设备作为其父设备的鼠标或触摸板。通常,只有一个主设备或核心设备没有父设备。但如果没有找到这样的设备,此函数将创建一个新的虚拟“核心指针”鼠标。因此,Qt可以在尚未进行输入设备发现和注册的平台中继续工作。- setCapabilities(caps)#
- 参数:
caps – 由
Capability组成的组合
注意
此函数已弃用。
请使用构造函数而不是设置器。
- setMaximumTouchPoints(c)#
- 参数:
c - int
注意
此函数已弃用。
请使用构造函数而不是设置器。
- setType(devType)#
- 参数:
devType –
DeviceType
注意
此函数已弃用。
请使用构造函数而不是设置器。
设置设备类型
devType并推断指针类型。- uniqueId()#
- 返回类型::
返回设备的唯一ID(其效用尚不确定)。
你可能更应该关注 QPointerEventPoint::uniqueId()。
属性
uniqueId的获取器。