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

Резултати

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

Пребарај: #nocomment

当前筛选 #nocomment清除筛选
JIZZAX24 | RASMIY

@Jizzax24kanal · Post #59730 · 20.03.2026 г., 06:58

#NoComment Jome masjidlarda hayit namozi o'qildi Kanalimizga obuna boʻling 👉@Jizzax24kanal https://t.me/joinchat/AAAAAEb1PYV00dCr2WDOpw

Hashtags

Uzbekneftgaz | Расмий канал

@ao_uzbekneftegaz · Post #11295 · 12.02.2026 г., 10:32

#NoComment "Uzbekistan GTL" MChJ xodimlari belgilangan reja asosida navbatdagi tibbiy ko‘rikdan o‘tishmoqda, jarayon xodimlar salomatligini ta’minlash uchun xizmat qiladi. 👇Bizni kuzating: 🌐web-sayt | 📷instagram | 👉telegram | ▶️youtube | 💬facebook

Hashtags

Uzbekneftgaz | Расмий канал

@ao_uzbekneftegaz · Post #10704 · 21.12.2025 г., 09:36

#nocomment Uzbekistan GTL - Biz toza energiya yaratamiz! _______ Uzbekistan GTL - Мы создаём чистую энергию! _______ Uzbekistan GTL - We create pure energy! 👇Bizni kuzating: 🌐web-sayt | 📷instagram | 👉telegram | ▶️youtube | 💬facebook

Hashtags

Uzbekneftgaz | Расмий канал

@ao_uzbekneftegaz · Post #10602 · 09.12.2025 г., 18:01

#nocomment Ayni damda Qoraqalpog‘iston Respublikasi Mo‘ynoq hududida havo harorati -3 daraja sovuqni ko‘rsatmoqda. Ustyurt kengliklarida kuchli shamol tufayli sovuq ikki karra kuchli bo‘lmoqda. Gaz qazib chiqarish bo‘yicha istiqbolli hudud bo‘lgan Mo‘ynoqdagi “O‘zbekneftgaz” AJga qarashli barcha quduqlarda burg‘ilash ishlari tunu kun tashkil etilgan. Maqsad 5 ming metr chuqurlikdagi quduqlardan katta bosimda, sanoat miqyosidagi gaz oqimini qazib olish. 👇Bizni kuzating: 🌐web-sayt | 📷instagram | 👉telegram | ▶️youtube | 💬facebook

Hashtags

Transport_Prokuraturasi

@transport_prokuraturasi · Post #9402 · 11.12.2025 г., 13:32

#nocomment "Hyundai Rotem"ning birinchi poyezdi yetib kelmoqda __ Первый поезд «Hyundai Rotem» уже в пути |Site|Telegram|Facebook|YouTube|Instagram|X

Hashtags

Toshkentdan gapiramiz...

@RMMMTSHB · Post #8996 · 06.11.2025 г., 13:27

#nocomment Vashington ko’chalarida O’zbekiston Prezidenti Shavkat Mirziyoyevning AQShga tashrifi munosabati bilan qutlov so’zlari aks etgan maxsus ekranli traklar harakatlanmoqda. Bu aksiya Vashington va Virjiniya shtatida istiqomat qiluvchi vatandoshlarimiz tomonidan tashkil qilingan. 👉Rasmiy sahifalarimiz: TELEGRAM | INSTAGRAM | FACEBOOK

Hashtags

Waste.uz

@wasteuzgroup · Post #7943 · 25.01.2025 г., 05:05

#NoComment Ko‘chaga chiqindi tashlashdan nega uyalmaymiz? ___ Почему мы не стыдимся выбрасывать мусор на улицу? Manba 📷Instagram | 🕊Telegram | 📱Facebook |

Hashtags

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