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 слични објави

Пребарај: #kambag

当前筛选 #kambag清除筛选

📍Hazorasp tumani, Bo‘ston mahallasi: bandlik va kambag‘allikni kamaytirishdagi ijobiy natijalar 🎙🟦🟦🟦 ✅1‑iyul holatiga, mahallamizda ishsizlik darajasini 6,6% dan 5,8% ga tushishiga erishdik. 🟢Shu vaqt mobaynida kambag‘al oilalar soni 92 tadan 71 taga kamaydi. Ularni ham kambag‘allikdan chiqarish bo‘yicha amaliy ishlar davom etmoqda. Aholimiz o‘z mehnati bilan barqaror daromad topmoqda, yangi ish o‘rinlari yaratilmoqda va mahallamizda bandlik darajasi oshmoqda. Shuhrat Jumaniyozov, 📍Hazorasp tumani, Bo‘ston MFY hokim yordamchisi. 🤝 Hududlardagi bandlik va tadbirkorlikdagi ijobiy natijalarni bizda kuzatib boring ❗️ #Hazorasp#Bo‘ston #Bandlik#IshO‘rinlari #Kambag'allikQisqartirish ✅RASMIY SAHIFALARIMIZGA OBUNA BO'LING 📱Telegram | 📱Instagram 📱Facebook | 📱Web-sayt 📱Youtube | 📱Vakansiya_bot 🇺🇿Xorazm viloyati Kambag'allikni qisqartirish va bandlik boshqarmasi Axborot xizmati

🍋Limon yetishtirish va eksportini rivojlantirish bo‘yicha seminar o‘tkazildi 🇺🇿Mamlakatimizda qishloq xo‘jaligini diversifikatsiya qilish, yangi ish o‘rinlari yaratish va eksport salohiyatini kengaytirish borasidagi islohotlar izchil davom etmoqda. Shu maqsadda, O‘zbekiston Respublikasi Kambag‘allikni qisqartirish va bandlik vazirligi topshirig‘iga asosan, Xorazm viloyati Kambag‘allikni qisqartirish va bandlik boshqarmasi tomonidan Urganch shahar Kasbiy ko‘nikmalar markazida limon yetishtirish va uni eksport qilish imkoniyatlarini rivojlantirishga bag‘ishlangan seminar tashkil etildi. 👀Seminar davomida: 🔵 Limonning O‘zbekiston sharoitiga mos, eksportbop navlari; 🟣 Ularning biologik va foydali xususiyatlari; ⚪ Parvarish, sug‘orish va o‘g‘itlash jarayonlari; 🔵 Talab qilinadigan harajatlar va olinadigan daromadlar; 🟢 Issiqxona tashkil qilish bo‘yicha davlat tomonidan beriladigan imtiyozli kredit va subsidiyalar haqida batafsil ma’lumot berildi. 💬Tadbir yakunida ishtirokchilar o'zlarini qiziqtirgan savollariga mutaxassislardan javob oldilar. #Xorazm#Bandlik#Kambag'allikniQisqartirish #LimonYetishtirish#Eksport#KasbiyKo‘nikmalarMarkazi ✅RASMIY SAHIFALARIMIZGA OBUNA BO'LING 📱Telegram | 📱Instagram 📱Facebook | 📱Web-sayt 📱Youtube | 📱Vakansiya_bot 🇺🇿Xorazm viloyati Kambag'allikni qisqartirish va bandlik boshqarmasi Axborot xizmati

🟦🟦📣RADIODA BIZ HAQIMIZDA 🎙 Efirda "Bandlik masalasi" eshittirishi. 📻 FM 106.7 |25-iyul 🇺🇿Xiva shahar Kambag'allikni qisqartirish va bandlikka ko'maklashish bo'limi bosh mutaxassisi Feruza Bekchanova📻Fm 106.7 Xorazm radiosining 25-iyul kungi 🎙"Bandlik masalasi" eshittirishida 📹jonli efirda chiqish qilib, shaharda 🔘 kambag‘allikni qisqartirish bo‘yicha amalga oshirilayotgan ishlar haqida real misollar, 🔘 bandlikka oid yangi tashabbuslar, 🔘 kasb-hunarga o‘qitishdagi yondashuvlar haqida so‘z yuritdi. #XivaShahar#BandlikMasalasi#XorazmRadiosi#FM106_7#IshgaJoylashish#Kambag'allikniQisqartirish #KasbgaYo‘naltirish 🇺🇿Xorazm viloyati Kambag'allikni qisqartirish va bandlik boshqarmasi Axborot xizmati Telegram |Instagram |Facebook |Web-sayt |Youtube |Vakansiya