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

Резултати

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

Пребарај: #britishcouncil

当前筛选 #britishcouncil清除筛选

Ustozlarimiz ingliz tilini o'qitish bo'yicha eng zamonaviy bilimlarga ega bo'lishdi ✅ “Yangi O‘zbekiston” universiteti tomonidan Abdulla Avloniy nomidagi pedagogik mahorat milliy-tadqiqot institutida British Council'ning ingliz tili dasturlarini yaratish bo'yicha direktori Michael Connollyning ochiq ma'ruzasi o‘tkazildi. 💫 Yurtimizda yoshlarga ta'lim berayotgan 200 ga yaqin ustozlar uchun Michael Connolly “Ingliz tilini o'qitishning ta'lim sohasida tutgan o'rni va istiqbollari” mavzusida o‘z tajribasi bilan bo‘lishdi. 🎗 Ushbu ochiq muloqot va savol-javoblar kelajakda soha vakillari faoliyatining unumdorligini oshirishiga ishonamiz. 🔁English ➖➖➖➖➖➖➖➖➖➖ #BritishCouncil#CAUF ⬇️Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook

British Council'ning ingliz tili dasturlarini yaratish bo'yicha direktori Michael Connolly O'zbekistonga kelmoqda 🌐Markaziy Osiyo universitetlar forumi doirasida "Yangi O'zbekiston" universiteti tomonidan British Council'ning ingliz tili darsliklarini yaratish bo'yicha direktori Michael Connollyning ma'ruzasi tashkil etiladi. ✅ Michael Connolly 50 dan ortiq davlat bilan yoshlarning ingliz tilini tez va mukammal o'rgatish va ularning bilimini baholash bo'yicha hamkorlik qiladi. Bundan tashqari uning jamoasi tomonidan o'qituvchilar malakasini oshirishga doir turli loyihalar ham yo'lga qo'yilgan. 🔹 Ma'ruza Abdulla Avloniy nomidagi milliy tadqiqot instituti bilan hamkorlikda 15-oktabr, soat 14:30 da "Ingliz tilini o'qitishning ta'lim sohasida tutgan o'rni va istiqbollari" mavzusida o'tkaziladi. 👉Roʻyxatdan oʻtish 📍Manzil: Toshkent shahar, Olmazor tumani, Ziyo ko‘chasi 6-uy 🔁English ➖➖➖➖➖➖➖➖➖➖ #BritishCouncil#CAUF ⬇️Biz ijtimoiy tarmoqlarda: Veb-sayt | Telegram | Instagram | Facebook

The Digi Doodles

@Digi_doodles · Post #605 · 17.07.2025 г., 20:01

Why Technology Needs Artists🐇 British Council Report ⛪️ In a world shaped by algorithms, artists are shaping ethics, inclusion, and creative policy. 56 global voices — from Adobe, GoogleQuantum AI, Serpentine and more — argue that tech without culture risks losing its soul 📝 Artists contribute: — Ethical frameworks for innovation — Inclusive, human-centred design — Cross-disciplinary imagination This isn’t just collaboration — it’s co-authorship of the future. #ArtAndTech#EthicalAI#CreativeLeadership#BritishCouncil

❗️IELTS на бумаге отменён в Узбекистане С 11 июля 2025 года бумажный формат IELTS полностью прекращается. Причина — возможные утечки заданий и рост мошенничества. Теперь экзамен можно сдать только на компьютере. Что делать зарегистрированным участникам, как перенести или вернуть оплату — в нашей статье. https://yep.uz/ru/2025/07/ielts-uzbekistan-otmena-bumazhnogo-formata/ #IELTS#Узбекистан#АнглийскийЯзык#IDP#BritishCouncil#IELTSнаКомпьютере#Образование#IELTS2025#экзамены