test propertize Qt5
This commit is contained in:
parent
095e0ebf62
commit
0f2d5f3f37
33
qt5.py
33
qt5.py
@ -26,3 +26,36 @@ except ImportError as pyqt5_error:
|
|||||||
else:
|
else:
|
||||||
os.environ["QT_API"] = "pyqt5"
|
os.environ["QT_API"] = "pyqt5"
|
||||||
QtCore.Signal = QtCore.pyqtSignal
|
QtCore.Signal = QtCore.pyqtSignal
|
||||||
|
|
||||||
|
|
||||||
|
def propertize(class_):
|
||||||
|
class_dict = class_.__dict__.copy()
|
||||||
|
for name, attr in class_dict.items():
|
||||||
|
if isinstance(attr, type):
|
||||||
|
propertize(attr)
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
setattr(class_, "get" + name.capitalize(), copy(attr))
|
||||||
|
setattr(
|
||||||
|
class_,
|
||||||
|
name,
|
||||||
|
property(
|
||||||
|
getattr(class_, "get" + name.capitalize()),
|
||||||
|
getattr(class_, "set" + name.capitalize())
|
||||||
|
)
|
||||||
|
)
|
||||||
|
print(getattr(class_, "get" + name.capitalize()))
|
||||||
|
except AttributeError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
"""for module in QtWidgets, QtCore, QtGui, QtMultimedia:
|
||||||
|
for class_ in module.__dict__.values():
|
||||||
|
if isinstance(class_, type):
|
||||||
|
propertize(class_)"""
|
||||||
|
|
||||||
|
propertize(QtCore.QPoint)
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
p=QtCore.QPoint(1,1)
|
||||||
|
print(p.x)
|
Loading…
x
Reference in New Issue
Block a user