[PyQt] Qt Property System
christop.probst at gmail.com
Thu Jun 15 16:51:02 BST 2017
Thank you for answering my question.
On Thu, Jun 15, 2017 at 11:47 AM, Phil Thompson <phil at riverbankcomputing.com
> On 15 Jun 2017, at 4:30 pm, Christopher Probst <christop.probst at gmail.com>
> > Hi,
> > I am starting to feel a lot of love for PyQt. I am inquiring about how
> the Qt Property system translates into PyQt
> > The documentation states:
> > "PyQt5 does not support the setting and getting of Qt properties as if
> they were normal instance attributes. This is because the name of a
> property often conflicts with the name of the property’s getter method."
> > Does this mean I can't write label.setProperty("text" , "HelloWorld")? I
> am not exactly sure what this means.
> > I have tried this for instance and it works great:
> > for i in range(0, propertyCount):
> > metaProperty = metaObject.property(i)
> > typeName = metaProperty.typeName()
> > propertyName = metaProperty.name()
> > value = object.property(metaProperty.name())
> > print("propertyName: " + propertyName + ", value: " + str(value)
> + ", type: " + typeName)
> > Do we use the Qt Property system in PyQt?
> You can use Qt properties from Python as you can from C++ as your code
> above shows.
> The documentation is trying to point out that you can't use Qt properties
> as it they were Python properties. In other words you cannot do...
> label.text = "HelloWorld"
> However you can use pyqtProperty to define properties that behave as both
> Python and Qt properties at the same time.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the PyQt