Установить свойства виджета в PySide можно не только через соответствующие методы и конструктор класса. Можно их изменять с помощью метода setProperty по имени.
btn = QPushButton("Click Me")
btn.setProperty("flat", True)
Это аналогично вызову
btn.setFlat(True)
Если указать несуществующее свойство, то оно просто создается
btn.setProperty("btnType", "super")
Получить его значение можно методом .property(name)
btn_type = btn.property("btnType")
Когда это может быть полезно?
▫️Можно просто хранить какие то данные в виджете и потом их доставать обратно
widget = QWidget()
widget.setProperty('my_data', 123)
print(widget.property('my_data'))
▫️ Назначая эти свойства разным виджетам можно потом отличить виджеты во время итераци по ним. Например, найти все кнопки со свойством my_data="superbtn".
Но ведь вместо кастомного свойства можно использовать objectName, будет тот же результат.
Да, но y ObjectName есть ограничение - только строки.
▫️ Если нам потребуется не просто поиск а, например, сортировка по числу, то свойства позволяют нам это сделать. Поддерживается любой тип данных
widget.setProperty('my_data', {'Key': 'value'})
widget.setProperty('order', 1)
all_widgets.sort(key=w: w.property('order'))
Но ведь Python позволяет всё вышеперечисленное сделать простым созданием атрибута у объекта
widget.order = 1
widget.my_data = 123
Да, но я думаю что не надо объяснять почему не стоит так делать. К тому же, если у виджета нет свойства то метод .property(name) вернет None, а отсутствующий атрибут выбросит исключение.
▫️ Действительно полезное применение кастомным свойствам - контроль стилей. Здесь атрибутами не обойтись, нужны именно свойства.
Дело в том, что в селекторах стилей можно указывать конкретные свойства виджетов на которые следует назначать стиль.
Просто запустите этот код
from PySide2.QtWidgets import *
if __name__ == "__main__":
app = QApplication([])
widget = QWidget(minimumWidth=300)
layout = QVBoxLayout(widget)
btn1 = QPushButton("Action 1")
btn2 = QPushButton("Action 2")
btn3 = QPushButton("Action 3", flat=True)
layout.addWidget(btn1)
layout.addWidget(btn2)
layout.addWidget(btn3)
# добавим кастомное свойство одной кнопке
btn1.setProperty("btnType", "super")
# добавляем стили
widget.setStyleSheet(
"""
QPushButton[btnType="super"] {
background-color: yellow;
color: red;
}
QPushButton[flat="true"] {
color: yellow;
}
"""
)
widget.show()
app.exec_()
С помощью селектора мы избирательно назначили стили на конкретные кнопки.
Как получить список всех кастомный свойств?
Функция получения списка кастомных свойств отличается от получения дефолтных.
def print_widget_dyn_properties(widget):
for prop_name in widget.dynamicPropertyNames():
property_name = prop_name.data().decode()
property_value = widget.property(property_name)
print(f"{property_name}: {property_value}")
#tricks#qt
ZNAK: ход строительства за март
В ZNAK март стал месяцем активной работы: проект уверенно набирает темп.
Директор проекта Юрий Зебницкий делится итогами месяца и рассказывает, как развивается строительство. В видео — ключевые этапы и текущее состояние объекта.
Полный фотоотчет смотрите по ссылке →
#ZNAK
Иногда дом начинается не с квартиры ✨
В домах №18 и №20 ЖК ZNAK подъезды — это полноценное продолжение архитектуры проекта. Сдержанная палитра, выверенные оттенки, тонкие детали — все работает на ощущение спокойствия и вкуса, без лишнего шума.
Витражные окна наполняют пространство светом, делают холлы воздушными и живыми. Здесь нет ощущения «подъезда» в привычном смысле — это лобби, в которое приятно возвращаться каждый день.
Каждое пространство продумано до мелочей: авторский дизайн, мягкая мебель, зоны ожидания, аккуратные галереи с картинами. И при этом — все про удобство в повседневной жизни: колясочные, велосипедные, многоуровневая грязезащита.
Здесь красота и комфорт становятся равнозначными понятиями ❤️🔥
Канал «Железно Киров» в MAX →
#ZNAK
В ZNAK живет семья, которая делит жизнь между двумя странами: Италией и Россией. Он — итальянец, она — русская, двое детей, два ритма жизни, два культурных контекста. Киров для них не случайная точка на карте, а осознанная часть маршрута. И несколько лет назад этим маршрутом стал ZNAK📌
❣️У семьи уже есть квартира в проекте. Они успели прожить здесь свои сезоны, почувствовать атмосферу, оценить уровень сервиса и продуманной среды, к которому быстро привыкаешь. Поэтому, когда встал вопрос о расширении, они снова выбрали ZNAK и приобрели вторую квартиру в строящемся доме.
Это уже не просто эмоциональное решение, это стратегия, долгосрочный взгляд и доверие к качеству. И в этом есть особая символичность. ZNAK — это действительно знак качества, который считывают даже за тысячи километров.
В видео вы узнаете историю этой семьи и почему они выбирают ZNAK снова и снова. Ведь иногда лучший отзыв — это повторная покупка.
#ZNAK
ZNAK: ход строительства за февраль
В ZNAK февраль стал месяцем стабильного продвижения по ключевым направлениям.
Директор проекта Юрий Зебницкий рассказывает, какие этапы были выполнены и как сегодня выглядит стройплощадка. Подробности — в новом видеоотчете.
Полный фотоотчет смотрите по ссылке →
#ZNAK
⚡️Зима заканчивается, а вместе с ней и наши сезонные скидки
Сейчас действует выгода до 18% на подборку квартир от «Железно» — ваш последний шанс забрать квартиру мечты с суперскидкой❗️
В подборке разные сценарии жизни: с большой кухней-гостиной для долгих ужинов, с мастер-спальней для тишины, с просторной лоджией для воздуха и света. Все так же комфортно и уютно, просто с чуть более приятной цифрой в договоре.
Теперь осталось принять решение и проводить зиму с правильным результатом.
#ZNAK
🔉День открытых дверей в ЖК ZNAK
Дорогие будущие жители дома №25 (ул. Козулева, д. 2, к.3) ЖК ZNAK! 24 февраля приглашаем вас на День открытых дверей.
На встрече мы подробно расскажем о вашем новом доме и о старте передачи ключей, а также познакомим с сервисной компанией. Это отличная возможность задать все вопросы и узнать важные детали.
📌 Дата: 24 февраля
📌 Место: г. Киров, Октябрьский просп., 145, банкетный зал «Вятка»
📌 Начало регистрации и ярмарка партнеров: 17:30
Регистрируйтесь по ссылке →
До встречи — будем рады видеть вас!
#ZNAK
Как можно не любить 14 февраля, когда рядом такие жители 😍
Сегодня в ЖК ZNAK мы вместе с сервисной компанией «Азбука» вышли к жителям с небольшими валентинками — просто чтобы сказать спасибо. За улыбки во дворе, за теплые встречи в подъезде, за то, что выбираете жить здесь.
Мы строим дома, но самое главное в них — вы. И нам важно, чтобы это чувствовалось не только в проектах, но и в таких простых, искренних моментах.
Спасибо, что выбираете жить в ZNAK. Мы правда это ценим и чувствуем взаимность каждый день ❤️
#ZNAK
Провожаем зиму с горячими скидками
🔥
Февраль короткий месяц, но с очень приятным бонусом — скидки до 20% на подборку квартир от «Железно».
Отличный момент, чтобы выбрать планировку под свой сценарий жизни: с просторной гостиной, мастер-спальней, кабинетом или террасой — и сделать это на заметно более выгодных условиях.
Февраль может стать тем самым счастливым шансом. Успейте поймать зиму за хвост и проводить ее с выгодой ❤️
#ZNAK
🔉День открытых дверей в ЖК ZNAK
Дорогие будущие жители дома №33 (ул. Козулева, д. 9, к. 2) ЖК ZNAK! 19 февраля приглашаем вас на День открытых дверей.
На встрече мы подробно расскажем о вашем новом доме и о старте передачи ключей, а также познакомим с сервисной компанией. Это отличная возможность задать все вопросы и узнать важные детали.
📌 Дата: 19 февраля
📌 Место: г. Киров, Октябрьский просп., 145, банкетный зал «Вятка»
📌 Начало регистрации и ярмарка партнеров: 17:30
Регистрируйтесь по ссылке →
До встречи — будем рады видеть вас!
#ZNAK
ZNAK: ход строительства за январь
Проект ZNAK входит в 2026 год с хорошим темпом.
Директор проекта Юрий Зебницкий делится результатами января и рассказывает, с чего начался новый строительный сезон. В видео — итоги месяца и планы на ближайшее время.
Полный фотоотчет смотрите по ссылке →
#ZNAK
🔉Старт продаж дома №34 в ZNAK
Мы открываем продажи в доме №34 — новом доме города будущего.
❣️ Архитектура комплекса с северо-европейскими мотивами, сдержанные формы и выразительные материалы задают устойчивый, уравновешенный характер всего пространства — от фасадов до двора и входных групп.
❣️ Во дворе дома создан особый ландшафт, вдохновленный северной природой. Это двор, который не перегружает, а настраивает на спокойный ритм. Общественные пространства продолжают эту логику. Интерьеры мест общего пользования выполнены в природной палитре с теплым светом, округлыми формами и живыми акцентами.
❣️ Во второй секции дома реализована система «Тихий подъезд»: все квартиры сдаются с чистовой отделкой. Это значит, что после переезда не придется жить в постоянном шуме и ремонтах. Отделка доступна в двух стилях: теплом и экологичном WOOD или более строгом и основательном STONE.
Дом №34 — это еще один шаг к спокойной, продуманной жизни в ZNAK, где комфорт складывается из множества незаметных, но важных деталей.
#ZNAK
🔥Электромобиль в 2026 году это уже повседневность и в ZNAK к ней готовы. На территории жилого комплекса предусмотрены зарядные станции для электромобилей — одной из них уже пользуются жители и гости проекта.
Сегодня открыта зарядка у дома №22 (ул. Дмитрия Козулева, дом 2, корпус 5). Еще две станции уже установлены у домов №25 (ул. Дмитрия Козулева, дом 2, корпус 3) и №33 (ул. Дмитрия Козулева, дом 9, корпус 2) — они откроются в ближайшее время.
В ZNAK мы всегда думаем удобство, спокойствие и про продуманную среду, где технологии становятся естественной частью жизни.
Наш город будущего развивается — шаг за шагом, включая те решения, которые действительно нужны сегодня.
#ZNAK