Регулярно приходится писать и ревьюить код, где используется 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
🇬🇧 New destination alert! TezJet is now flying directly from Bishkek to Delhi.
✈️ Starting 7th December 2025, every Sunday
www.flytezjet.com
#TezJet#BishkekToDelhi#DirectFlights#FlyTezJet#TravelWithTezJet#DelhiBound#NewRoute
🇷🇺 Новая направление! TezJet теперь летает напрямую из Бишкека в Дели.
✈️ Старт рейса: 7 декабря 2025 года, каждое воскресенье
www.flytezjet.com
#TezJet#BishkekToDelhi#DirectFlights#FlyTezJet#TravelWithTezJet#DelhiBound#NewRoute
✈️ BIG NEWS! TezJet is taking off to Moscow, Russia 🇷🇺
📍 Direct flights from Bishkek (FRU) to Moscow Domodedovo (DME)
📅 Launching 21 August 2025
🕕 Departure from Bishkek: 06:20 AM
🕖 Arrival in Moscow: 07:50 AM
📅 Operating 3 times a week:
➡️ Monday
➡️ Thursday
➡️ Saturday
🚀 Experience the comfort of our MD-83 aircraft as you fly direct to the heart of Russia. Whether it’s business, family, or adventure—Moscow is calling!
🎟️ Tickets are now on sale at www.flytezjet.com
Don't miss the first flight—book your seat now!
#TezJetAirlines
#TezJetToMoscow#MoscowFlights#TezJetAirlines#FlyTezJet#BishkekToMoscow#NewRoute#TravelWithTezJet
✈️ BIG NEWS! TezJet is taking off to Moscow, Russia 🇷🇺
📍 Direct flights from Bishkek (FRU) to Moscow Domodedovo (DME)
📅 Launching 21 August 2025
🕕 Departure from Bishkek: 06:20 AM
🕖 Arrival in Moscow: 07:50 AM
📅 Operating 3 times a week:
➡️ Monday
➡️ Thursday
➡️ Saturday
🚀 Experience the comfort of our MD-83 aircraft as you fly direct to the heart of Russia. Whether it’s business, family, or adventure—Moscow is calling!
🎟️ Tickets are now on sale at www.flytezjet.com
Don't miss the first flight—book your seat now!
#TezJetToMoscow#MoscowFlights#TezJetAirlines#FlyTezJet#BishkekToMoscow#NewRoute#TravelWithTezJet
🍞Гастромаршрут «Хлеб да соль земли Новогрудской» – это не только хлеб, но и зрелища!
Пройти по старинному городу, заглянуть в антикварную лавку на подступах к замку, выпить авторский кофе в костёле Святого Архангела Михаила, узнать историю любимого белорусского поэта Адама Мицкевича на театрализованной экскурсии, подняться на 35-метровую высоту старейшего костела Беларуси — костела Св.Казимира, спуститься с возвышенной душой и испечь ржаной хлеб на закваске в Казимировском Доме и конечно отдохнуть с французским шиком в экоусадьбе «Лавандовый сад» под пение птиц, хруст багета и со вкусом крафтовых сыров.
Узнать больше о маршруте и стать обладателем уникального чемоданчика 👉@visitNavahrudak
г. Новогрудок, пл. Ленина, 7, ТИЦ г. Новогрудка.
📱🎞Vkontakte
📱🎞Instagram
#познайбеларусь#новогрудок#маршруты#belarustravel#newroute#food#belarus
При использовании фото и материалов просьба отмечать @natbelarus (нам тоже нравится, что вам нравится) 😊🌿🙌
#познайбеларусь#гастротуризм#новогрудок
If you are going to visit Doha, you can use this selection of attractions that are worth visiting:
◽Museum of Illusions
◽Gondolania Theme Park & Villaggio Mall
◽The Pearl Island
◽Souq Waqif
◽Simaisma Beach
✈️ P.S. We will operate flights to Doha once a week: on Thursdays.
☎️ Tel.: 44-640-40-49, 44-640-40-50, 1133.
🌊
Если Вы собрались в Доху, Вам не помешает эта подборка достопримечательностей, которые стоит посетить:
◽Музей Иллюзий
◽Тематический парк Gondolania и Торговый центр Villaggio
◽Набережная The Pearl Island
◽Рынок Souq Waqif
◽Пляж Simaisma Beach
✈️ P.S. Мы будем совершать полёты в Доху раз в неделю: по четвергам.
☎️ Тел.: 44-640-40-49, 44-640-40-50, 1133.
#somonair#doha#qatar#newroute#сомонэйр#доха#катар#новыйрейс