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

Резултати

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

Пребарај: #dasturchilar

当前筛选 #dasturchilar清除筛选
Kompyuter Bilimlari | Windows Blog

@kompyuter_bilimlari · Post #6200 · 29.12.2023 г., 03:32

🔺Dasturchilar uchun eng yaxshi kod tahrirlash dasturi: 1. VSCode - https://www.code.visualstudio.com 2. Sublime Text - https://www.sublimetext.com/ 3. Atom - https://atom.io/ 3. WebStorm - https://www.jetbrains.com/webstorm/ Oramizda dasturchilar bormi? 🌐Birinchi raqamli Windows Blog |#dasturchilar / #sayt

Kompyuter Bilimlari | Windows Blog

@kompyuter_bilimlari · Post #5638 · 30.05.2023 г., 02:10

⚡️Dasturchilar uchun eng yaxshi kod tahrirlash dasturi: 1. VSCode - https://www.code.visualstudio.com 2. Sublime Text - https://www.sublimetext.com/ 3. Atom - https://atom.io/ 3. WebStorm - https://www.jetbrains.com/webstorm/ P.s: Oramizda dasturchilar bormi? 👉🏼Birinchi raqamli Dasturlash Blog | #dasturchilar / #sayt

Suxrob Xurramov | Blog

@suxrobblog · Post #1177 · 22.10.2025 г., 18:15

Dasturchi tanishlarim dizaynni o'rganishni boshlashibdi ekan, bir tomondan AI, bir tomondan dasturchilar o'ylantiradi endi) Biz ham AI zamonida dasturlashni o'rganishni boshlashimiz lozim. Bora bora bozorda bir necha vositalar bilan raqobat qilish, bir qanot bilan uchayotgan qushdek bo'lib qoladi. Ya'niki yaralangan qush hamon uchmoqda. Bunday qushlarni kesak bilan urib tushurish hech gap emas! :)) @suxrobblog » #AI#dizayner#dasturchilar🪓

Suxrob Xurramov | Blog

@suxrobblog · Post #341 · 14.12.2024 г., 08:13

147 Colors — bu CSS-da mavjud bo'lgan ranglarni nomi bo'yicha ko'rish va tanlash uchun vosita. Xususiyatlari: 💧 Ranglar katalogi - nomlari bilan 17 ta asosiy va 130 ta qoʻshimcha rangni oʻz ichiga oladi. ❄️ Filtrlash – kerakli rang yoki ranglar guruhi boʻyicha oson qidirish. 🌀 Rang g'ildiragi — qulaylik uchun ranglarning interaktiv tanlovi. 🎮 CSS kodini yaratish — dasturchilar uchun ranglarni loyihalarga nusxalash imkoniyati mavjud. @suxrobblog — #foydali#ranglar#dasturchilar

Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #4032 · 03.11.2025 г., 15:05

#vscode#prettier#dasturchilar#vscodetutorial Tartibsiz kod – bu tartibsiz fikr. Shuning uchun har doim Prettier bilan kodingizni tozalang VS Code’da buni qanday qilish videoda ko'rsatilgan. 💻@dasturlash_hayoti— Dasturchilar hayoti, motivatsiya va IT olamidagi eng foydali maslahatlar shu yerda!

Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #3676 · 19.02.2025 г., 14:43

🎨Dizaynerlar va Dasturchilar uchun ajoyib manba! Agar zamonaviy UI komponentlari kerak bo‘lsa yoki ilhom izlayotgan bo‘lsangiz,Uiverse.io sizga yordam beradi! ✅ Interaktiv tugmalar, shakllar, kartalar va animatsiyalar ✅Bepul va ochiq manba ✅Kodlarni nusxalab olib, loyihangizda ishlatish imkoniyati Frontend dasturchilar uchun katta imkoniyat! 💻 Saytni sinab ko‘ring va o‘z loyihalaringizni yanada chiroyli qiling! 🔥 📌 Link:https://uiverse.io #Dizayn#UI#Frontend#Dasturchilar#Ilhom 💻@dasturlash_hayoti — bir xatoni tuzatib, ikkinchisiga tayyorlanish! 😅