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

Резултати

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

Пребарај: #21mart

当前筛选 #21mart清除筛选
ADU.UZ | Rasmiy kanal

@adu_uz · Post #59618 · 22.03.2026 г., 09:01

#Dayjest#21mart 🌺“Navro‘zni ulug‘lash – Insonni ulug‘lashdir!” 21-mart Navro‘z umumxalq bayrami munosabati bilan “Navro‘zni ulug‘lash – Insonni ulug‘lashdir!” bosh g‘oyasi asosida oliy ta’lim tashkilotlarida ma’naviy-ma’rifiy tadbir va tanlovlar o‘tkazilmoqda. ➖ Qoʻqon davlat universiteti; ➖ Namangan davlat universiteti; ➖ TDTU Termiz filiali; ➖ Andijon qishloq xoʻjaligi va agrotexnologiyalar instituti; ➖ Andijon davlat chet tillari instituti; ➖ Buxoro davlat universiteti; ➖ Jizzax politexnika instituti; ➖ Namangan davlat texnika universiteti; ➖ Nukus davlat pedagogika instituti; ➖ O‘zMU Jizzax filiali; ➖ Buxoro davlat texnika universiteti; ➖ Buxoro davlat pedagogika instituti; ➖ Osiyo xalqaro universiteti; ➖ Samarqand davlat pedagogika instituti; ➖ SamDU Urgut filiali; ➖ Farg‘ona davlat universiteti; ➖ TKTI Yangiyer filiali; ➖ Qarshi davlat universiteti; ➖ Samarqand davlat veterinariya meditsinasi, chorvachilik va biotexnologiyalar universiteti; ➖ Navoiy davlat universiteti; ➖ Andijon davlat universiteti; ➖ Andijon davlat pedagogika instituti; ➖ Urganch davlat universiteti; ➖ Alfraganus universiteti; ➖ Guliston davlat universiteti; ➖ Samarqand iqtisodiyot va servis instituti; ➖ Toshkent davlat yuridik universiteti; ➖ Guliston davlat pedagogika instituti; ➖ Toshkent davlat agrar universiteti; ➖ Jizzax davlat pedagogika universiteti; ➖ TDIU Samarqand filiali; ➖ O‘zDSMI Nukus filiali; ➖ Navoiy davlat konchilik va texnologiyalar universiteti; ➖ Millat umidi universiteti; ➖ Toshkent kimyo-texnologiya instituti; ➖ Botir Zokirov nomidagi Milliy estrada san’ati instituti; ➖ Samarqand davlat arxitektura-qurilish universiteti; ➖ Urganch davlat pedagogika instituti; ➖ Denov tadbirkorlik va pedagogika instituti; ➖ Shahrisabz davlat pedagogika instituti; ➖ Chirchiq davlat pedagogika universiteti; ➖ Farmatsevtika ta’lim va tadqiqot instituti; ➖ Farg’ona jamoat salomatligi tibbiyot instituti; ➖ Toshkent davlat texnika universiteti; ➖ Samarqand davlat tibbiyot universiteti ; ➖ O‘zbekiston davlat jahon tillari universiteti; ➖ Toshkent iqtisodiyot va pedagogika universiteti; ➖ Urganch davlat tibbiyot instituti; ➖ “Ipak yo‘li” turizm va madaniy meros xalqaro universiteti. Bizni kuzating Facebook | Instagram |YouTube | Telegram

🇺🇿Qadrli yurtdoshlar, yasharish va yangilanish bayrami - Navro‘zi olam muborak bo‘lsin! 🌱 Barchangizni diyorimizga o‘zgacha shukuh va tarovat ila kirib kelgan fasllar malikasi bahorning yangilanish va yasharish bayrami – Navro‘zi olam bilan muborakbod etamiz! 🌸Navro‘z barchamizga fayzu baraka, tinchlik va farovonlik keltirsin! Hurmat bilan, Biznes va tadbirkorlik oliy maktabi #GSBE#GraduateSchool#Navruz#21Mart#Holiday 🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube

CNC Electric Uzbekistan

@electromaxgroup · Post #981 · 21.03.2021 г., 04:03

Qadrli do'stlar, sizlarni chin qalbimizdan Navro'z bayrami bilan tabriklaymiz! Ushbu bahoriy kunda tuganmas baxt, xotirjamlik, ezgulik va farovonlik tilaymiz. Har bir oilada quvonch va farovonlik hukmron bo'lsin. CNC Uzbekistan kompaniyasi nomidan har biringizga ko'rsatilgan ishonch, e'tibor va samarali hamkorlik uchun minnatdorlik bildiramiz. Дорогие друзья, от всей души поздравляем Вас с праздником Навруз! В этот весенний день мы хотим пожелать Вам безграничного счастья, мира, добра и процветания. Пусть в каждой семье царит радость и благополучие. Компания CNC Uzbekistan благодарит каждого за оказанное доверие, проявленное внимание и плодотворное сотрудничество. Telegram|Instagram|Facebook|Youtube|Website|Email #21mart#navruz#cnc#cncelectric#cncuzbekistan#cnctashkent#elcomelectric#elcom