TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #381 · 23 окт.

Установить свойства виджета в 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

Hashtags

Резултати

Пронајдени 54 слични објави

Пребарај: #meetup

当前筛选 #meetup清除筛选
StartupBase

@startupbaseuz · Post #5067 · 22.11.2024 г., 15:38

#meetup © “DesCom Talks” tadbiriga ro‘yxatdan o‘ting — bu ijodkorlik va g‘oyalar birlashadigan, ilhom esa haqiqiy loyihaga aylanadigan tadbir! Sizni mutaxassislarning qiziqarli ma’ruzalari, jonli muloqot qilish imkoniyati, ajoyib faoliyatlar va qimmatbaho sovrinlarni yutib olish imkoniyati kutmoqda. Bu g‘oyalar olamiga sho‘ng‘ish va dizayn hamjamiyatining bir qismi bo‘lish uchun ajoyib imkoniyat! 🗓 28-noyabr, soat 17:00 📍 Toshkentdagi Inha universiteti, B304 xona ⭐️Quyidagi havola orqali ro‘yxatdan o‘ting: https://forms.gle/iyJKYJvK1SieYqWU6 ______ © Join DesCom Talks — an event where creativity meets ideas, transforming inspiration into real projects. You can look forward to insightful lectures by industry experts, opportunities for live networking, engaging activities, and the chance to win exclusive prizes. This is an exceptional opportunity to immerse yourself in a world of ideas and become part of the design community! 🗓 November 28, 5:00 PM 📍 Inha University in Tashkent, Room B304 ⭐️Register via the link: https://forms.gle/iyJKYJvK1SieYqWU6

Hashtags

Вместе - хоть в космос ! Сегодня у нас митап. Это всегда особенный день. Мы очень готовимся и стараемся. И хочется не просто повторить успех предыдущих встреч, а сделать ещё больше — в содержании, в атмосфере, в настоящем обмене энергией. В этот раз мы выбрали нашу любимую тему — команды. Будем вместе размышлять: каким должен быть идеальный лидер сегодня? И познакомимся с подходом, который считаем особенно актуальным — вдохновляющее лидерство. Очень рады, что приглашение выступить перед нашим сообществом принял Сергей Кондаков, генеральный директор Tom Tailor. Настоящий практик и вдохновляющий лидер! А ещё — в апреле День космонавтики. А где, как не в космосе, самые сплочённые команды? Поэтому мы получили официальное разрешение от Роскосмоса на выступление действующего космонавта Дмитрия Петелина, а наш VI Meet Up Фактор Лидера назвали: “Вместе — хоть в космос! От команды звезд к звездной команде”. Сегодня вечером мы ждём наших гостей. Мест уже нет — SOLD OUT! Если вам интересно принимать участие в наших митапах в будущем — ставьте + в комментариях или пишите в личку. Будем рады расширять наше пространство доверия и развития. #MeetUp Просвирякова: Дневник Развития Бизнеса

Hashtags

В преддверии нашего 7-го #MeetUp в апреле хочется использовать по максимуму каждый день и заполнять свое окружение интересными и коммуникативными людьми 👥 Наверняка вы уже заметили, что моя главная ценность в людях, поэтому я отдаю много внимания своим коллегам, клиентам, качеству нашего общения. И для вас стараюсь предлагать только проверенные контакты ✔️ В этот раз делюсь с вами полезными каналамина темы маркетинга, финансов, здоровья и психологии и т.д. Все, чем интересуюсь я сама! Только проверенные авторы и польза здесь https://t.me/addlist/3rl5nspZWRU1YmQy📍

Hashtags

Ship Overboard

@Ship_Overboard · Post #1649 · 13.06.2025 г., 12:54

#meetup 再面再探.jpg 在合炉饱餐一顿汉堡之后,陪着我们即将入职的totoro @krysdou 看车看手机去了(笑 背景是wahway 奇瑞智界R7

Hashtags

ПретходнаСтраница 1 од 5Следна