- class QMetaObject#
摘要#
方法#
def
__repr__()
def
cast()
def
classInfo()
def
classInfoCount()
def
className()
def
constructor()
def
enumerator()
定义
inherits()
定义
metaType()
定义
method()
定义
property()
定义
superClass()
静态函数#
注:
本文档可能包含从C++自动转换为Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译有问题,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来告诉我们。
详细描述#
表示对信号-槽(或信号-函数对象)连接的引用。
可用于检查连接是否有效,以及通过使用
disconnect()
来断开它。对于没有上下文对象的信号-函数对象连接,这是唯一选择性地断开该连接的方法。由于Connection只是一个引用,当Connection被销毁或重新分配时,底层的信号-槽连接不受影响。
- 类 Call#
- __repr__()#
- 返回类型::
对象
- 静态 checkConnectArgs(signal, method)#
- 参数::
signal –
QMetaMethod
method –
QMetaMethod
- 返回类型::
布尔值
这是一个重载函数。
如果信号和方法的参数兼容,返回
true
;否则返回false
。- 静态 checkConnectArgs(signal, method)
- 参数::
signal – 字符串
method – 字符串
- 返回类型::
布尔值
如果信号和方法的参数兼容,返回
true
;否则返回false
。期望
signal
和method
都已被标准化。- classInfo(index)#
- 参数::
index – int
- 返回类型::
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
返回具有给定
index
的类信息项的元数据。示例
class MyClass(QObject): Q_OBJECT Q_CLASSINFO("author", "Sabrina Schweinsteiger") Q_CLASSINFO("url", "http://doc.moosesoft.co.uk/1.0/") # public ...
- classInfoCount()#
- 返回类型::
int
返回此类中类信息项的数量。
- classInfoOffset()#
- 返回类型::
int
返回此类的类信息偏移量;即此类的第一个类信息项的索引位置。
如果没有具有类信息的超类,则偏移量为0;否则,偏移量是此类的超类中所有类信息项的总和。
- className()#
- 返回类型::
str
返回类名。
另请参阅
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
递归搜索给定
object
的所有子对象,并将从这些对象中匹配的信号连接到object
的槽,这些槽遵循以下形式:on_<object = void(<signal parameters>)
假设我们的对象有一个类型为
QPushButton
的子对象,其对象名为button1
。用于捕获按钮的clicked()
信号的槽函数将是def on_button1_clicked():
如果
object
本身设置了正确的对象名,则它自己的信号也会连接到相应的槽。另请参阅
- 构造函数(index)#
- 参数::
index – int
- 返回类型::
返回给定
index
的构造函数的元数据。- constructorCount()#
- 返回类型::
int
返回此类中构造函数的数量。
- static disconnect(sender, signal_index, receiver, method_index)#
- static disconnectOne(sender, signal_index, receiver, method_index)#
返回给定
index
的枚举器的元数据。- enumeratorCount()#
- 返回类型::
int
返回此类中枚举的数量。
- enumeratorOffset()#
- 返回类型::
int
返回此类枚举的偏移量;即此类第一个枚举的索引位置。
如果没有具有枚举的基类,则偏移量为0;否则偏移量是类中所有枚举的总和。
- indexOfClassInfo(name)#
- 参数::
name – str
- 返回类型::
int
查找类信息项
name
并返回其索引;否则返回 -1。- indexOfConstructor(constructor)#
- 参数::
constructor – str
- 返回类型::
int
查找
constructor
并返回其索引;否则返回 -1。请注意,
constructor
必须是统一格式,如由normalizedSignature()
返回。- indexOfEnumerator(name)#
- 参数::
name – str
- 返回类型::
int
查找枚举
name
并返回其索引;否则返回 -1。- indexOfMethod(method)#
- 参数::
method – 字符串
- 返回类型::
int
查找
method
并返回其索引;否则返回 -1。注意,该
method
必须是标准化形式,如由normalizedSignature()
返回。- indexOfProperty(name)#
- 参数::
name – str
- 返回类型::
int
查找属性
name
并返回其索引;否则返回 -1。- indexOfSignal(signal)#
- 参数::
signal – 字符串
- 返回类型::
int
查找
signal
并返回其索引;否则返回 -1。这与
indexOfMethod()
相同,但是如果方法存在但不是信号,将返回 -1。注意,
signal
必须是归一化形式,这由normalizedSignature()
方法返回。- indexOfSlot(slot)#
- 参数::
slot – 字符串
- 返回类型::
int
查找
slot
并返回其索引;否则返回 -1。这与
indexOfMethod()
相同,除非方法存在但不是 slot,它将返回 -1。- inherits(metaObject)#
- 参数::
metaObject –
QMetaObject
- 返回类型::
布尔值
如果
QMetaObject
描述的类继承了由metaObject
描述的类型,则返回true
;否则返回 false。类型被视为继承了自身。
- static invokeMethod(obj, member, val0[, val1=QGenericArgument()[, val2=QGenericArgument()[, val3=QGenericArgument()[, val4=QGenericArgument()[, val5=QGenericArgument()[, val6=QGenericArgument()[, val7=QGenericArgument()[, val8=QGenericArgument()[, val9=QGenericArgument()]]]]]]]])#
- 参数::
obj –
QObject
member – str
val0 –
QGenericArgument
val1 –
QGenericArgument
val2 –
QGenericArgument
val3 –
QGenericArgument
val4 –
QGenericArgument
val5 –
QGenericArgument
val6 –
QGenericArgument
val7 –
QGenericArgument
val8 –
QGenericArgument
val9 –
QGenericArgument
- 返回类型::
布尔值
请使用此函数的可变数量重载版本。
此函数重载了
invokeMethod()
此重载使用
AutoConnection
连接类型调用成员,并忽略返回值。- static invokeMethod(obj, member, ret[, val0=QGenericArgument(nullptr)[, val1=QGenericArgument()[, val2=QGenericArgument()[, val3=QGenericArgument()[, val4=QGenericArgument()[, val5=QGenericArgument()[, val6=QGenericArgument()[, val7=QGenericArgument()[, val8=QGenericArgument()[, val9=QGenericArgument()]]]]]]]]
- 参数::
obj –
QObject
member – str
ret –
QGenericReturnArgument
val0 –
QGenericArgument
val1 –
QGenericArgument
val2 –
QGenericArgument
val3 –
QGenericArgument
val4 –
QGenericArgument
val5 –
QGenericArgument
val6 –
QGenericArgument
val7 –
QGenericArgument
val8 –
QGenericArgument
val9 –
QGenericArgument
- 返回类型::
布尔值
请使用此函数的可变数量重载版本。
此函数重载了
invokeMethod()
此重载始终使用连接类型
AutoConnection
调用成员。- static invokeMethod(obj, member, arg__3, ret[, val0=QGenericArgument(nullptr)[, val1=QGenericArgument()[, val2=QGenericArgument()[, val3=QGenericArgument()[, val4=QGenericArgument()[, val5=QGenericArgument()[, val6=QGenericArgument()[, val7=QGenericArgument()[, val8=QGenericArgument()[, val9=QGenericArgument()]]]]]]]]
- 参数::
obj –
QObject
member – str
arg__3 –
ConnectionType
ret –
QGenericReturnArgument
val0 –
QGenericArgument
val1 –
QGenericArgument
val2 –
QGenericArgument
val3 –
QGenericArgument
val4 –
QGenericArgument
val5 –
QGenericArgument
val6 –
QGenericArgument
val7 –
QGenericArgument
val8 –
QGenericArgument
val9 –
QGenericArgument
- 返回类型::
布尔值
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
这是一个重载函数。
请使用此函数的可变参数重载版本。
在对象
obj
上调用member
(信号或槽名)。如果成员可以调用,则返回true
。如果没有这样的成员或参数不匹配,则返回false
。有关更多信息,请参阅可变参数
invokeMethod()
函数。此函数应与该函数以相同的方式执行,但有如下限制参数数量限制为10。
参数名称可能需要完全字符串匹配。
元类型将不会自动注册。
在异步方法调用中,参数必须是Qt元对象系统已知的类型,因为Qt需要将参数复制以便在后台事件中存储。如果您尝试使用队列连接并收到错误消息
QMetaObject.invokeMethod: Unable to handle unregistered datatype 'MyType'
在调用
invokeMethod()
之前使用qRegisterMetaType()
注册数据类型。另请参阅
Q_ARG()
Q_RETURN_ARG()
qRegisterMetaType()
invoke()
- static invokeMethod(obj, member, type, val0[, val1=QGenericArgument()[, val2=QGenericArgument()[, val3=QGenericArgument()[, val4=QGenericArgument()[, val5=QGenericArgument()[, val6=QGenericArgument()[, val7=QGenericArgument()[, val8=QGenericArgument()[, val9=QGenericArgument()]]]]]]]]
- 参数::
obj –
QObject
member – str
类型 –
ConnectionType
val0 –
QGenericArgument
val1 –
QGenericArgument
val2 –
QGenericArgument
val3 –
QGenericArgument
val4 –
QGenericArgument
val5 –
QGenericArgument
val6 –
QGenericArgument
val7 –
QGenericArgument
val8 –
QGenericArgument
val9 –
QGenericArgument
- 返回类型::
布尔值
请使用此函数的可变数量重载版本。
此函数重载了
invokeMethod()
如果不想处理成员返回值,可以使用这个重载。
- static invokeMethod(object, member, type[, val0={}[, val1={}[, val2={}[, val3={}[, val4={}[, val5={}[, val6={}[, val7={}[, val8={}[, val9={}]]]]]]]]
- 参数::
对象 –
QObject
member – str
类型 –
ConnectionType
val0 –
QGenericArgumentHolder
val1 –
QGenericArgumentHolder
val2 –
QGenericArgumentHolder
val3 –
QGenericArgumentHolder
val4 –
QGenericArgumentHolder
val5 –
QGenericArgumentHolder
val6 –
QGenericArgumentHolder
val7 –
QGenericArgumentHolder
val8 –
QGenericArgumentHolder
val9 –
QGenericArgumentHolder
- 返回类型::
布尔值
- 静态 invokeMethod(object, member, type, ret[, val0={}[, val1={}[, val2={}[, val3={}[, val4={}[, val5={}[, val6={}[, val7={}[, val8={}[, val9={}]]]]]]]])
- 参数::
对象 –
QObject
member – str
类型 –
ConnectionType
ret –
QGenericReturnArgumentHolder
val0 –
QGenericArgumentHolder
val1 –
QGenericArgumentHolder
val2 –
QGenericArgumentHolder
val3 –
QGenericArgumentHolder
val4 –
QGenericArgumentHolder
val5 –
QGenericArgumentHolder
val6 –
QGenericArgumentHolder
val7 –
QGenericArgumentHolder
val8 –
QGenericArgumentHolder
val9 –
QGenericArgumentHolder
- 返回类型::
对象
- 静态 invokeMethod(object, member[, val0={}[, val1={}[, val2={}[, val3={}[, val4={}[, val5={}[, val6={}[, val7={}[, val8={}[, val9={}]]]]]]]]])
- 参数::
对象 –
QObject
member – str
val0 –
QGenericArgumentHolder
val1 –
QGenericArgumentHolder
val2 –
QGenericArgumentHolder
val3 –
QGenericArgumentHolder
val4 –
QGenericArgumentHolder
val5 –
QGenericArgumentHolder
val6 –
QGenericArgumentHolder
val7 –
QGenericArgumentHolder
val8 –
QGenericArgumentHolder
val9 –
QGenericArgumentHolder
- 返回类型::
布尔值
- 静态 invokeMethod(object, member, ret[, val0={}[, val1={}[, val2={}[, val3={}[, val4={}[, val5={}[, val6={}[, val7={}[, val8={}[, val9={}]]]]]]]]])
- 参数::
对象 –
QObject
member – str
ret –
QGenericReturnArgumentHolder
val0 –
QGenericArgumentHolder
val1 –
QGenericArgumentHolder
val2 –
QGenericArgumentHolder
val3 –
QGenericArgumentHolder
val4 –
QGenericArgumentHolder
val5 –
QGenericArgumentHolder
val6 –
QGenericArgumentHolder
val7 –
QGenericArgumentHolder
val8 –
QGenericArgumentHolder
val9 –
QGenericArgumentHolder
- 返回类型::
对象
返回与此类元对象对应的元类型。如果元对象来自命名空间,则返回无效的元类型。
- method(index)#
- 参数::
index – int
- 返回类型::
返回给定索引的元数据方法。
- methodCount()#
- 返回类型::
int
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
返回此类中方法的数量,包括每个基类提供的方法数量。这些包括信号和槽以及普通成员函数。
使用以下代码获取包含特定类的特定方法的
QStringList
QMetaObject* metaObject = obj.metaObject() methods = QStringList() for i in range(metaObject.methodOffset(), metaObject.methodCount()): methods << QString.fromLatin1(metaObject.method(i).methodSignature())
- methodOffset()#
- 返回类型::
int
返回此类的函数偏移量;即此类第一个成员函数的索引位置。
偏移量是类超类中所有方法的和(总是正数,因为
QObject
具有deleteLater()槽和一个destroyed()信号)。- newInstance(val0[, val1=QGenericArgument()[, val2=QGenericArgument()[, val3=QGenericArgument()[, val4=QGenericArgument()[, val5=QGenericArgument()[, val6=QGenericArgument()[, val7=QGenericArgument()[, val8=QGenericArgument()[, val9=QGenericArgument()]]]]]]]]]])#
- 参数::
val0 –
QGenericArgument
val1 –
QGenericArgument
val2 –
QGenericArgument
val3 –
QGenericArgument
val4 –
QGenericArgument
val5 –
QGenericArgument
val6 –
QGenericArgument
val7 –
QGenericArgument
val8 –
QGenericArgument
val9 –
QGenericArgument
- 返回类型::
请使用此函数的可变参数重载版本。
构建此类的新实例。您可以将最多十個參數(
val0
,val1
,val2
,val3
,val4
,val5
,val6
,val7
,val8
和val9
)传递給構造函數。返回新對象,如果沒有可用的合適構造函數則返回None
。注意,只有用
Q_INVOKABLE
標記聲明的構造函數才會通过元物件系統提供。另请参阅
Q_ARG()
constructor()
- static normalizedSignature(method)#
- 参数::
method – 字符串
- 返回类型::
對給定的
method
簡化签名。Qt 使用簡化的签名为決定兩個給定的信號和槽数是否相容提供參考。簡化過程中將空白減少至最小,將 'const' 移動到適當的位置,從值型中刪除 'const',並將常量引用替換為值。
- static normalizedType(type)#
- 参数::
type – 字符串
- 返回类型::
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
规范化一个
type
。关于 Qt 如何规范化的描述,请参见
normalizedSignature()
。示例
normType = QMetaObject.normalizedType(" int *") # normType is now "const int*"
- property(index)#
- 参数::
index – int
- 返回类型::
返回给定
index
的属性的元数据。如果不存在这样的属性,则返回空QMetaProperty
。- propertyCount()#
- 返回类型::
int
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
返回此类中的属性数量,包括每个基类提供的属性数量。
使用以下代码获取特定于给定类的
QStringList
,其中包含属性QMetaObject* metaObject = obj.metaObject() properties = QStringList() for i in range(metaObject.propertyOffset(), metaObject.propertyCount()): properties << QString.fromLatin1(metaObject.property(i).name())
- propertyOffset()#
- 返回类型::
int
返回此类的属性偏移量;即此类第一个属性的索引位置。
偏移量是此类所有超类属性的总和(由于总是正的,因为
QObject
具有名称属性)。- superClass()#
- 返回类型::
返回超类的元对象,或返回代码
None
如果没有这样的对象。另请参阅
- userProperty()#
- 返回类型::
返回设置了
USER
标志为 true 的属性。另请参阅