@ULTIMORAPOLITICS · Post #42192 · 16.11.2022 г., 17:58
Chiara #Appendino ha presentato un ddl sul Matrimonio Egualitario. @UltimoraPolitics
Hashtags
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
Пребарај: #appendino
@ULTIMORAPOLITICS · Post #42192 · 16.11.2022 г., 17:58
Chiara #Appendino ha presentato un ddl sul Matrimonio Egualitario. @UltimoraPolitics
Hashtags
@UltimoraPOLITICS · Post #40801 · 29.07.2022 г., 13:53
#Italia Chiara #Appendino (#M5S) verso la candidatura in parlamento. @UltimoraPolitics
Hashtags
@ultimoraPOLITICS · Post #39531 · 16.05.2022 г., 14:01
#Italia Chiara #Appendino (#M5S|NI) assolta in appello nel processo Ream a Torino: cade l’accusa di falso. L’ex sindaca in lacrime dopo la sentenza. @UltimoraPolitics
Hashtags
@UltimoraPOLITICS · Post #40940 · 07.08.2022 г., 11:00
#Italia#Elezioni2022 Chiara #Appendino ha annunciato la candidatura alle parlamentarie del #M5S. @UltimoraPolitics
@Osservatorioitaliano · Post #24900 · 31.03.2026 г., 12:19
#Italia#Camera Chiara #Appendino (#M5S|LEFT): "Ci vuole veramente un gran coraggio a venire oggi qui a chiederci la fiducia. Io francamente non ne sarei capace. Come potete pretendere che noi vi diciamo “sì, sì, sì, ci fidiamo di voi”, quando abbiamo di fronte un Governo che tradisce in modo seriale e sistematico? Questo Governo, altro che fiducia, dovrebbe chiedere scusa, perché voi avete più volte - lo fate anche oggi chiedendo di nuovo la fiducia su questo provvedimento - rotto e calpestato quel patto di lealtà, che è fondamentale, tra la Nazione e il Governo" @OsservatorioItaliano
Hashtags
@ultimoraPOLITICS · Post #39471 · 16.05.2022 г., 09:15
#Italia#Piemonte#Torino Chiara #Appendino (#M5S|NI): "Torino è pronta ad ospitare una nuova edizione dell'Eurovision se l'Ucraina non sarà pronta.' @UltimoraPolitics
@Osservatorioitaliano · Post #25419 · 17.04.2026 г., 19:42
#Italia#Russia Chiara #Appendino (#M5S|LEFT): "Un mese fa, dalle colonne de La Verità, lanciavo una proposta di buonsenso: riaprire subito al gas russo per fermare l'emorragia dei costi energetici e salvare le nostre imprese. La risposta del mainstream fu immediata: "filo-putiniana"! Eppure, la realtà dei fatti sta smantellando pezzo per pezzo quell'ideologia cieca. In questi giorni, l'amministratore delegato di #ENI - Claudio #Descalzi - ha lanciato lo stesso identico monito. Poche ore fa si è aggiunta la voce dell'industria nazionale: il presidente di Confindustria, Emanuele Orsini, ha certificato il collasso, ricordando che siamo passati da 28 a 160 euro a megawattora e che le nostre aziende sono ormai "fuori dalla competizione globale". Entrambi denunciano l'inaccettabile beffa che si sta consumando a Bruxelles: mentre all'Italia viene imposta l'austerità, il resto d'Europa continua a fare affari con la Russia nel silenzio generale. Il Gnl russo continua ad arrivare tranquillamente, passando per Amsterdam come denuncia oggi Confindustria, o dal sito siberiano di Yamal - di cui la francese Total è socia - che nel primo trimestre 2026 ha visto le esportazioni verso l'Ue balzare del 17%. La #Spagna ha registrato un incremento record degli acquisti pari al +124%, e i maggiori Paesi europei hanno versato a Mosca 1,3 miliardi di euro in un solo mese. L'atteggiamento di Giorgia #Meloni non è più giustificabile. Non si può fare la "pedina ubbidiente" facendo pagare il prezzo alla nostra manifattura, mentre francesi, spagnoli e olandesi aggirano un embargo di facciata per curare i propri interessi. Ora basta. Prima viene l'interesse nazionale, prima vengono le nostre imprese." @OsservatorioItaliano