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

Резултати

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

Пребарај: #stopgenocidio

当前筛选 #stopgenocidio清除筛选
Capibara Media

@gabgerm · Post #3433 · 20.01.2026 г., 19:15

🇮🇱⚔️🇵🇸🇺🇳ALLARME A GERUSALEMME. Ore 5 del mattino. Israele entra con i bulldozer nel compound dell’UNRWA, l’agenzia ONU per i rifugiati palestinesi. Magazzini demoliti. Aiuti umanitari sepolti. Medicine e cibo per Gaza e Cisgiordania, distrutti. Il commissario ONU Lazzarini: "Un attacco senza precedenti. Un nuovo livello di violazione del diritto internazionale." Israele dice: "È legale." Guardiamo i fatti: Ottobre 2024: Israele vieta all’UNRWA di operare. Dicembre 2024: Revoca l’immunità diplomatica all’ONU. Gennaio 2025: Chiude l’ospedale UNRWA nel Quartiere Musulmano. Oggi demolisce. È un piano chiaro. Sradicare ogni presenza internazionale. Ogni baluardo di umanità. Per riscrivere la storia. Per cancellare il diritto al ritorno. Il messaggio è: "Qui non avete più nessuno. Nemmeno l’ONU vi protegge." Fermare l’apartheid è dovere di ogni coscienza. #GerusalemmeEst#UNRWA#ApartheidIsraeliano#StopGenocidio#PalestinaLibera ResistenzaDigitale FreePalestine

Marx21.it

@marx21news · Post #9520 · 09.01.2026 г., 07:47

Sulla Palestina, la repressione infinita Intervista a Bassam Saleh, giornalista palestinese ✍️ di Alba Vastano “Non è un cessate il fuoco, è un inganno infinito.” Con parole lucide e durissime, Bassam Saleh denuncia la complicità dei governi occidentali — USA e UE in primis — nel genocidio ancora in corso contro il popolo palestinese. Dal veto americano che paralizza l’ONU Al sostegno militare dell’Italia del governo Meloni a Israele Alla criminalizzazione della solidarietà con la Palestina Fino alla repressione delle ONG, dei sanitari e dei movimenti dal basso Saleh smonta la narrazione dominante: non si tratta di “difesa” né di lotta al terrorismo, ma di colonialismo, apartheid e dominio geopolitico, nel solco di una lunga storia di violenze imperialiste. ✊ Al centro dell’intervista anche: • il ruolo del BDS come strumento non violento • le divisioni politiche palestinesi come ricchezza, non debolezza • la campagna per la liberazione di Marwan Barghouthi, il “Mandela palestinese” • la persecuzione giudiziaria e mediatica contro attivisti e associazioni solidali in Italia Una testimonianza necessaria per chi rifiuta il silenzio e l’indifferenza. La solidarietà non è un crimine. La resistenza all’occupazione è un diritto. Vita, terra e libertà per la Palestina. Approfondimenti e fonti: Bassam Saleh – Vita, terra e libertà per la Palestina Nuova Resistenza / La Città Futura #PalestinaLibera#StopGenocidio#Gaza#BDS#DirittiUmani#Solidarietà#NoAllApartheid#MarwanBarghouthi#FreePalestine https://www.marx21.it/internazionale/sulla-palestina-la-repressione-infinita-intervista-a-bassam-saleh-giornalista-palestinese/