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

Пребарај: #ardern

当前筛选 #ardern清除筛选
DiplomatKa

@Diplomatika · Post #104 · 04.11.2020 г., 08:05

❗️BIRINCHI MARTA❗️MAORI TUB AHOLISINING AYOL VAKILI YANGI ZELANDIYA TASHQI ISHLAR VAZIRLIGIGA BOSHCHILIK QILADI. 📢Yangi Zelandiya Bosh vaziri #Jasinda#Ardern yangi parlament vazirlarini e'lon qildi, shu jumladan #Nanaia#Mahuta ni tashqi ishlar vaziri etib tayinlashini ham; u bu lavozimni egallaganmamlakatdagi birinchi tub aholi ayoli bo'ldi. 👩‍💼 Maori taraqqiyoti va mahalliy o'z o'zini boshqarish masalalari vaziri vazifasini o'z ichiga olgan 25 yillik siyosiy tajribaga ega Mahuta dunyodagi eng xilma-xil bo'lib borayotgan parlamentga qo'shildi. ✨ Undan tashqari yana 16 ta maori vazirlari bor, ammo Nanaia hozircha ular orasida yagona ayoldir. "Men bu jamoadan juda mamnunman", deydi Ardernning o'zi. Bizga obuna bo'ling 👉@Diplomatika

DiplomatKa

@Diplomatika · Post #96 · 25.10.2020 г., 09:21

SIYOSATDAGI SUPER - ONA 💪: ⁉️Agar siz hali ham karyera va onalikning bir-biriga mos kelishiga shubha qilsangiz, bizning zamonamizning qahramoniga bir nazar tashlang! #Jasinda#Ardern - bu hukumat boshlig'i lavozimida bo'lganida onaga aylangan ikkinchi hukumat rahbari! ❤️ 1990-yilda, o'sha paytda Pokiston Bosh vaziri bo'lgan #Benazir#Bhutto xuddi shu lavozimda bo'lgan paytida ona bo'lgan edi. Qiziqarlisi, Jasindaning qizi Benazir Bhuttoning tug'ilgan kunida tug'ilgan😇 Bizga obuna bo'ling 👉@Diplomatika

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38319 · 04.05.2022 г., 15:01

#Sondaggi#NuovaZelanda Sondaggio di Newshub-Reid Research: #NAT|ECR: 40,5% (+9,5) #NZLP|Centro-sinistra: 38% (-6) #GRN|Verdi: 8% (-2) #ACT|Destra libertaria: 6% (-2) #Māori|Māori di centro-sinistra: 2,5% (+0,5) #NZF|Centro: 2% (-0,5) #TOP|Centro radicale: 1% (-0,5) #NCP|Destra: 1% "Chi preferiresti come Primo Ministro?" Jacinda #Ardern (NZLP): 36% (-7) Christopher #Luxon (NAT): 24% (+6) David #Seymour (ACT): 5% (-3) Data rilevazione: 18-27 aprile +/-: 22 gennaio-4 febbraio Intervistati: 1000 @UltimoraPolitics