Регулярно приходится писать и ревьюить код, где используется PySide2-6.
Заметил, что в подавляющем большинстве случаев настройка создаваемых базовых виджетов происходит через методы. Думаю, всем знаком такой способ.
Простой пример с кнопкой:
button = QPushButton("Click Me")
button.setMinimumWidth(300)
button.setFlat(True)
button.setStyleSheet("font-size: 20pt")
button.setToolTip("Super Button")
button.clicked.connect(lambda: print("Button clicked"))
Но есть и альтернативный способ - настройка через свойства. Это просто ключевые аргументы конструктора класса. Хоть они и не указаны в документации как аргументы, но они есть)
Этот код делает тоже самое но с помощью Property
button = QPushButton(
"Click Me",
minimumWidth=300,
flat=True,
styleSheet="font-size: 20pt",
toolTip="Super Button",
clicked=lambda: print("Button clicked"),
)
Где это может быть полезно
▫️ Это выглядит более аккуратно и коротко, уже повод использовать
▫️ Может использоваться в заполнении лейаута, когда нам не нужно никакое другое взаимодействие с виджетом и поэтому сохранять его в переменную не требуется. Например, лейбл или кнопка.
widget = QWidget(minimumWidth=400)
layout = QHBoxLayout(widget)
layout.addWidget(QLabel("Button >", alignment=Qt.AlignRight))
layout.addWidget(QPushButton("Click Me", clicked=lambda: print("Button clicked")))
widget.show()
Либо так
widget = QWidget(minimumWidth=400)
layout = QHBoxLayout(widget)
for wd in (
QLabel("Button >", alignment=Qt.AlignRight),
QPushButton("Click Me", clicked=lambda: ...)
):
layout.addWidget(wd)
widget.show()
▫️ Можно хранить настройки в каком-то конфиге или генерировать на лету, после чего передавать как kwargs.
kwargs = {"text": "Hello " * 30, "wordWrap": True}
my_label = QLabel(**kwargs)
Как получить полный список доступных свойств?
Эта функция распечатает в терминал все свойства виджета и их текущие значения
def print_widget_properties(widget):
meta_object = widget.metaObject()
for i in range(meta_object.propertyCount()):
property_ = meta_object.property(i)
property_name = property_.name()
property_value = property_.read(widget)
print(f"{property_name}: {property_value}")
#tricks#qt
https://youtu.be/-UdkPAxWshI👈🏻📺🕊🎬
JUAN O SAVIN
“HOW TO PERFORM MIRACLES IN THE MATRIX” with #TomNumbers & Ana Marins
This is a mind blowing reveal from #JuanOSavin
How we as the children of Adam can perform miracles - and are commanded to do so, for the benefit of all mankind
19.47 / 19.5 ⛰🗻🌋 The Power Number
MOVE THE MOUNTAIN = 195 ⭐️⭐️⭐️⭐️⭐️
➡️TUNE INTO THE #EthanLucasShow SATURDAY 12/16/2023 @ 10:07am ET FOR A CONVERSATION WITH SPECIAL GUEST #JuanOSavin!!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 01/17/2023 @ 7:01pm ET FOR A CONVERSATION WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 01/11/2023 @ 7:01pm ET FOR A SHOW WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 12/23/2022 @ 7:01pm ET FOR A SHOW WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 12/23/2022 @ 7:01pm ET FOR A SHOW WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 12/17/2022 @ 1:07pm PT FOR A SHOW WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 11/27/2022 @ 7:01pm ET FOR A SHOW WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 11/15/2022 @ 9:35am ET FOR A CONVERSATION WITH SPECIAL GUEST #JuanOSavin !!!
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
🔥🔥🔥 TUNE INTO THE #EthanLucasShow 11/05/2022 @ 5:11pm ET FOR A CONVERSATION WITH SPECIAL GUEST #JuanOSavin !!!
“Remember, remember the fifth of November…”
👁🗨 Go to www.EthanLucas.com and click on NEWS & TV to watch
https://youtu.be/VIuJUWftfO4👈🏻📺
#JuanOSavin the history of CHRISTMAS with #TomNumbers & Rachel WriteSide Blonde
The KING OF MISRULE , Saturn 🪐, The B-Ring of Saturn what was it a weapon ?
Destroyer of Worlds, StarWars, Twitter, Donald #Trump Junior, Elon, The Statue of Liberty 🗽 … and much much more…
Merry Christmas everyone 🎄🎺🎁🎅🏼
https://youtu.be/vfve6XBMQag👈🏻📺🌚
JUAN O SAVIN & #TomNUMBERS
MOON: Is The Forbidden Planet 🌝🌑🛸
Juan describes in detail the history of the Earth, how Earth use to be under a compressed hydrogen canopy… and the real nature of what the moon really is
Think Forbidden Planet, Planet Of The Apes 🗽🐵🦍, Starwars, Back To The Future, Interstellar & Space Odyssey 2001…
BEST SHOW so far I’ve done with #JuanOSavin🕊
ENJOY
#PsychClub#TheTomNumbersShow
Starts at 5.45pm U.K. GMT / 9.45am PST 👍🏼📺🤠