Регулярно приходится писать и ревьюить код, где используется 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
Подводка для глаз: тогда и сейчас 🎀
Ещё тысячи лет назад в жарком Египте люди начали подчёркивать глаза тёмной линией. Минералы, сажа и масла превращались в кохль — символ защиты, статуса и силы. Глаза обводили и мужчины, и женщины, веря, что взгляд может многое рассказать 👁️✨
С течением времени подводка превратилась в способ выразить красоту. В античности она подчёркивала форму глаз и черты лица, а в XX веке стала настоящей иконой: немое кино, дымчатые тени, выразительные стрелки — одна линия могла полностью менять образ 🎬
В 60-е годы подводка стала смелой и графичной, настоящим заявлением характера 🩶
Сегодня это целый мир возможностей.Подводка остаётся тем инструментом, с которым взгляд становится выразительным — и каждый день можно создавать свой образ!
А вы помните свою первую подводку?
Попробуй подводки ☁️ и будь неповторимой!
Подводка кремовая Miraculous #miraculouseyes
Подводка маркер с кисточкой S-CLASS #overpowered
#sodalovespopculture
🤩Вдохновляемся с Зарой Ларссон! 🤩
🌸Слушаем песни, любуемся макияжами и создаём свои яркие образы! 🫦
Небольшая подборка с косметикой Soda, которая подойдёт идеально🐚
• Подводка маркер с кисточкой S-CLASS #overpowered, 209 system
• Карандаш для глаз World Of Ice #magicalpower. Коллекция Winx, 001 Cool Down
• Палетка теней Magical Dust #magicalpower. Коллекция Winx
• Палетка теней Heart Of Alfea #magicalpower. Коллекция Winx
• Пигмент-подводка для глаз жидкая Princess Of Lynphea #magicalpower. Коллекция Winx, 002 Nature Touch
#sodalovespopculture
#sodainspiration
🔤🔤🔤🔤🔤🔤🔤🔤🔤 с SODA: Смелость. Креатив. Пугающее очарование!
Хеллоуин — лучший повод выйти за рамки и примерить самый запоминающийся образ!
С косметикой SODA ты сможешь воплотить любую идею — от утончённо-жуткой до эффектно-драматичной. Мы собрали подборку ярких образов и подсказали, какие продукты помогут повторить каждый из них.😄
Твои Must-Haves для Хеллоуина от SODA:
• 🕷️ Палетка теней World Is Yours #softdivalution
• 💋Idol Lip Mousse #softhot100, 104 FEARLESS
• 👁Chan Накладные ресницы Hypnotic Look #softdivalution
• 🕸️ Белая подводка S-CLASS #overpowered, 207 reader
#sodainspiration
🎤✨Kpop Demon Hunters, but make it Soda style!
Если бы наши героини выбирали косметику для своих боевых (и сценических 😏) образов, вот что бы оказалось у них в косметичке:
📌Румяна прессованные #rosycheeks, № 103
📌Подводка маркер с кисточкой S-CLASS #overpowered, 201 regressor
📌Жидкие тени для век Solaria #magicalpower. Коллекция Winx, 003 Crown Princess
📌 Chan Палетка теней World Is Yours #softdivalution
Немного фиолетового, капелька блёсток — и ты уже готова спасать мир (или хотя бы танцпол).
Собери свой demon-hunter look ⚡️
#sodainspiration
H2O just add water energyyyyy 🌊✨
включаем ностальгию и ловим вайб русалок вместе с SODA 🐚
солёный воздух, блеск кожи, влажные текстуры — сегодня ты main mermaid
собрали продукты, чтобы повторить тот самый магический glow 👀
1.Жидкие тени для век Domino #magicalpower. Коллекция Winx, 004 Dragon Fury
2.Хайлайтер STELLAR NEBULA #billionstars
3.Сияющее масло для губ #plumpit, № 101 Fergie
4.Подводка маркер с кисточкой S-CLASS #overpowered, 209 system
Делаем макияж, будто ты только что вышла из воды и готова покорять этот мир 🌊💙
в комментариях пиши, какой сериал вернуть в тренды следующим 👇
#sodainspiration
Одержимы вайбом новых ангелов Victoria’s Secret 💗 Эти выходы, сияние, уверенность — просто мурашки! ❤️ Мы собрали продукты SODA, чтобы передать тот самый подиумный блеск: сияющие глаза, глянцевые губы и дерзость в каждом взгляде ❤️
Вот что тебе нужно для angel energy:
🎀 Подводка с кисточкой S-CLASS #overpowered, 209 system
🎀 Жидкие тени Domino #magicalpower, Winx, 004 Dragon Fury
🎀 Карандаш для глаз Zenith #magicalpower, Winx, 006 Techno
🎀Кремовая подводка Miraculous #miraculouseyes, 304
🎀 Бальзам для губ Legendary Lip Balm #sweetkiss, 001
🎀 Масло для губ ROLLIN' LIP OIL #lipbizkit, 001 Strawberry cake
Немного блеска, уверенный взгляд и улыбка — и ты уже на своём подиуме 💋
#sodainspiration