- class QMetaProperty#
QMetaProperty类提供了关于属性元数据的信息。更多…摘要#
方法#
def
__init__()def
enumerator()def
hasStdCppSet()def
isAlias()def
isBindable()def
isConstant()def
isDesignable()def
isEnumType()def
isFinal()定义
isFlagType()定义
isReadable()定义
isRequired()定义
isStored()定义
isUser()定义
isValid()定义
isWritable()定义
metaType()定义
name()定义
read()定义
reset()定义
revision()定义
typeId()定义
typeName()定义
userType()定义
write()
说明
本文档可能包含从 C++ 自动翻译到 Python 的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译有问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 创建工单来告诉我们。
详细描述#
属性元数据是从对象的元对象获得的。有关详细信息,请参阅
property()和propertyCount()。属性元数据#
属性有一个
name()和一个type(),以及各种指定其行为的属性:isReadable(),isWritable(),isDesignable(),isScriptable(),revision(), 和isStored()。如果该属性是枚举类型,
isEnumType()返回true;如果属性是一个枚举,同时也是标记(即其值可以使用 OR 运算符组合),isEnumType()和isFlagType()都返回true。这些类型的枚举可以从enumerator()获取。属性的值通过
read()、write()和reset()来设置和检索;它们也可以通过QObject的设置和获取函数来修改。关于详细信息,请参见setProperty()和property()。复制和赋值#
QMetaProperty对象可以通过值复制。然而,每个副本都将引用相同的底层属性元数据。- __init__()#
如果此属性的 类型是枚举类型,则返回枚举器;否则返回的值是未定义的。
- hasNotifySignal()#
- 返回类型::
布尔值
如果此属性具有相应的更改通知信号,则返回
true;否则返回false。- hasStdCppSet()#
- 返回类型::
布尔值
- isAlias()#
- 返回类型::
布尔值
- isBindable)#
- 返回类型::
布尔值
如果
Q_PROPERTY()公开绑定功能,则返回true;否则返回 flase。这意味着你可以创建使用该属性作为依赖的绑定,或者在该属性上安装QPropertyObserver对象。除非该属性是只读的,否则你也可以设置该属性的绑定。
参见
QPropertyisWritable()bindable()- isConstant()#
- 返回类型::
布尔值
如果属性是常量则返回
true,否则返回false。如果一个属性是常量,那么在
Q_PROPERTY()中设置了CONSTANT属性。- isDesignable()#
- 返回类型::
布尔值
如果
Q_PROPERTY()的DESIGNABLE属性为false则返回false;否则返回true。- isEnumType()#
- 返回类型::
布尔值
如果属性的类型是枚举值,则返回
true,否则返回false。- isFinal()#
- 返回类型::
布尔值
如果属性是最终的,则返回
true,否则返回false。如果一个属性是最终的,则在
Q_PROPERTY()中设置了FINAL属性。- isFlagType()#
- 返回类型::
布尔值
如果属性的类型是用作标志的枚举值,则返回
true,否则返回false。标志可以组合使用“或”运算符。标志类型隐式也是枚举类型。
- isReadable()#
- 返回类型::
布尔值
如果此属性可读,则返回
true;否则返回false。- isRequired()#
- 返回类型::
布尔值
如果属性是必需的,则返回
true;否则返回false。如果
Q_PROPERTY()的REQUIRED属性被设置,属性是最终的。- isResettable()#
- 返回类型::
布尔值
如果此属性可以重置为默认值,则返回
true;否则返回false。参见
- isScriptable()#
- 返回类型::
布尔值
如果
Q_PROPERTY()的SCRIPTABLE属性为假,则返回false;否则返回 true。- isStored()#
- 返回类型::
布尔值
如果属性已存储,则返回
true;否则返回 false。如果
Q_PROPERTY()的STORED属性为假,则此函数返回false;否则返回 true。- isUser()#
- 返回类型::
布尔值
如果
Q_PROPERTY()的USER属性为假,则返回false。否则返回 true,表示该属性被指定为USER属性,即用户可以编辑的或以某种其他方式重要的属性。- isValid()#
- 返回类型::
布尔值
如果此属性有效(可读),则返回
true;否则返回false。参见
- isWritable()#
- 返回类型::
布尔值
如果此属性可写,则返回
true;否则返回 false。返回此属性的
QMetaType。参见
- name()#
- 返回类型::
str
返回此属性的名称。
参见
type()typeName()- notifySignal()#
- 返回类型::
如果指定了属性更改通知信号,则返回该属性的
QMetaMethod实例;否则返回一个无效的QMetaMethod。- notifySignalIndex()#
- 返回类型::
int
如果指定了属性更改通知信号,则返回该信号的索引,否则返回 -1。
- propertyIndex()#
- 返回类型::
int
返回此属性索引。
从指定的
object中读取属性的值。如果成功读取,则返回值;否则返回无效的变体。- readOnGadget(gadget)#
- 参数:
gadget –
void- 返回类型::
对象
从指定的
gadget中读取属性的值。如果成功读取,则返回值;否则返回无效的变体。只有当这是
Q_GADGET的属性时,才应使用此函数。- relativePropertyIndex()#
- 返回类型::
int
返回此属性在包含的元对象中的索引。
使用回置方法重置给定
object的属性。如果回置成功,则返回true;否则返回false。回置方法是可选的;只有少数属性支持它们。
- resetOnGadget(gadget)#
- 参数:
gadget –
void- 返回类型::
布尔值
使用回置方法重置给定
gadget的属性。如果回置成功,则返回true;否则返回false。回置方法是可选的;只有少数属性支持它们。
只有当这是
Q_GADGET的属性时,才应使用此函数。- revision()#
- 返回类型::
int
如果指定了 REVISION,则返回属性修订版,否则返回 0。
- typeId()#
- 返回类型::
int
返回属性的存储类型。这与
metaType().id() 相同。- typeName()#
- 返回类型::
str
返回此属性类型的名称。
参见
type()name()- userType()#
- 返回类型::
int
返回此属性的用戶类型。返回值是
QMetaType注册的其中一个值。这等价于
metaType().id()。参见
type()QMetaTypetypeName()metaType()将
value作为属性值写入给定的object。如果写入成功则返回true;否则返回false。如果
value的类型与属性类型不同,则尝试转换。一个空的QVariant()相当于调用reset()(如果此属性可重置),否则设置为默认构造的对象。- writeOnGadget(gadget, value)#
- 参数:
gadget –
voidvalue – object
- 返回类型::
布尔值
将
value作为属性值写入给定的gadget。如果写操作成功返回 true;否则返回false。只有当这是
Q_GADGET的属性时,才应使用此函数。