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

Пребарај: #belloni

当前筛选 #belloni清除筛选
Ultimora.net - POLITICS

@ULTIMORAPOLITICS · Post #42912 · 06.02.2023 г., 11:29

Cybersicurezza, nota Palazzo Chigi dopo vertice con #Baldoni e #Belloni: "Pur nella gravità dell'accaduto, in Italia nessuna istituzione o azienda primaria che opera in settori critici per la sicurezza nazionale è stata colpita" @UltimoraPolitics

Elena Basile Public Channel

@elenabasilepublicchanel · Post #192 · 08.01.2025 г., 12:03

Oggi sui giornali main stream si scopre la #tecnodestra e si teme #Musk per la sua influenza sulla politica Di fatto da #Reagan la politica arretra davanti alla economia. La finanza domina. Biden ne era una marionetta Ma le democrazie illiberali cercano di dirci che il problema è #Trump Sono loro che hanno preparato il terreno #ceciliasala libera! Siamo felici #Belloni purtroppo senza alcun senso dello Stato si dimette in un momento cruciale per il Governo Una mossa opportunistica per restare fedele alla linea PD, di Biden contro ogni negoziato Pessima mossa da parte di una ex diplomatica , che un partito personale fatto di relazioni pubbliche e giornalisti conniventi con i palazzi, candida a tutti i possibili incarichi Non sono una elettrice della #Meloni Ma in questo come in altri casi : chapeau alla sua abilità politica

Elena Basile Public Channel

@elenabasilepublicchanel · Post #69 · 05.06.2024 г., 08:50

La politica come progetto di trasformazione della società è moribonda. È stata sostituita dalla gestione dell esistente : #governance Ecco perchè candidano i burocrati di cui mai abbiamo conosciuto il pensiero politico a tutto come #Belloni Alla #presidentedellarepubblica o a essere #CommissarioUE Il piano di pace in MO è sempre lo stesso È una farsa Se #Biden vuole il #Cessateilfuoco potrebbe ottenerlo domani Come #Assange prigioniero del secolo affermava l' #occidente cerca guerre a bassa intensità in MO come in #Russia per gli interessi delle oligarchie armi, energetiche, finanziarie , iniezioni di liquidità per un sistema basato sul debito impazzito Il resto #Meloni o #Schlein è intrattenimento #Salvini o #Mattarella politichese Intanto in bambini di #Gaza continuano a morire e anche gli #ucraini La gente non arriva a fine mese, la #sanità e i beni pubblici distrutti, la #stampalibera morta Di questo e di altro parliamo domani grazie a #Caracciolo e #Odifreddi Vi aspetto libreria Eli via Somalia 50 A Roma Ore 18