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

Пребарај: #belgique

当前筛选 #belgique清除筛选
ÉTIENNE CHOUARD

@chouard · Post #403 · 27.12.2021 г., 15:17

#Belgique: ce cinéma et plus de 80 lieux de culture bravent la fermeture des salles de spectacles et ouvrent quand même. La police avait déclaré qu'ils ne contrôleraient pas ce dimanche dans la zone de Bruxelles. Faites cela tous les jours pour tout et cette crise du #covid19 sera terminée. #DésobéissanceCivilehttps://www.lesoir.be/414625/article/2021-12-26/pendant-la-manif-contre-la-fermeture-le-spectacle-continue-dans-les-salles

AES INFO

@aesinfos · Post #1922 · 27.11.2024 г., 11:04

#AESinfo | #Mali🇲🇱🤝🇹🇩#Belgique Assistance Humanitaire au Mali : La Belgique débloque 3 millions d'euros soit environ 2 milliards de FCFA. Pour soutenir l'assistance humanitaire au Mali, le Royaume de Belgique, à travers le Programme Alimentaire Mondial #PAM, a contribué à hauteur de 3 millions d’euros (environ 2 milliards de FCFA). Hier mardi 26 novembre 2024, une cérémonie de reconnaissance a été organisée par le #PAM au Commissariat à la Sécurité Alimentaire. Source : L'ESSOR

Voir de ses propres yeux

@voir_yeux · Post #12048 · 09.03.2026 г., 11:32

🇧🇪💥 Une explosion a retenti près d'une synagogue dans la ville belge de Liège, a rapporté l’Agence France-Presse (AFP), citant la police locale. Selon les informations préliminaires, il n'y a pas de blessés. Aucun autre détail n'a été communiqué. #belgique#synagogue#explosion

AES INFO

@aesinfos · Post #2424 · 28.01.2025 г., 13:43

#AESinfo | #RDC🇨🇩⚡🇧🇪#Belgique Kinshasa : Après l'ambassade France, l'ambassade de Belgique en Flammes ! Après l'ambassade de France, c'est au tour de l'ambassade de Belgique de subir la colère des manifestants. Des scènes de chaos se déroulent actuellement devant le bâtiment, les manifestants exprimant violemment leur mécontentement #PrayForGOMA

RISVEGLIO

@gianlucaprocaccinireport · Post #9632 · 20.07.2025 г., 07:17

Alcuni biglietti (Full Madness Pass) venduti in meno di 1 ora, con 200.000 venduti in 27 minuti solo per il mercato belga e altri stati europei reddit.com Copertura mediatica globale (oltre 1 miliardo di visualizzazioni online) Circa 46.000 partecipanti sono arrivati tramite il programma Global Journey, con pacchetti viaggio+biglietteria da oltre 50 città nel mondo, inclusa Roma YouBeat Fatturato non dichiarato, ma stimato in oltre 150 milioni di euro all’anno Non tutto però è luce. Alcuni report interni parlano di abbandoni tra lo staff per burnout, pressioni sui fornitori locali, e una gestione dei diritti d'immagine che costringe i partecipanti a cedere ogni contenuto personale filmato dentro il parco. Una distopia estetica in formato 8K. “È come entrare in un sogno, ma non sai chi l’ha disegnato. E non puoi svegliarti finché non finisce il bass.” La festa, il silenzio Ogni anno, quando l’ultimo beat si spegne, Boom torna a dormire. Le impalcature scompaiono, il parco viene ripulito, e l’acqua dei canali riacquista colore. Ma sotto la superficie, qualcosa rimane. Tomorrowland è molto più di un festival: è una struttura globale, un ecosistema di intrattenimento, capitale, narrazione e controllo. Una metafora — e forse anche un indizio — di come funziona il mondo nel XXI secolo: tra illusione e architettura perfetta, tra libertà e regia invisibile. #tomorrowland#festival#musica#electronicmusic#belgique#Boom#fiandre#europa#dance