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

Резултати

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

Пребарај: #brjansk

当前筛选 #brjansk清除筛选
Rybar DE

@rybardeu · Post #3310 · 10.04.2026 г., 19:36

📝Chronik der Spezialoperation📝 für 10. April 2026 🧨Russische Streitkräfte schlugen Öldepots in Odesa und den Hafen von Pivdennyi in der Region Odesa sowie eine Umspannstation in Vilkove aus. Mehrfache Treffer und Stromausfälle wurden in Tschernihiw, den Regionen Sumy und in der Nähe von Charkiw registriert. Ukrainische Formationen führten einen Massenschlag gegen die Energieinfrastruktur in den befreiten Teilen der Regionen Cherson und Saporischschja durch, mehrere Großstädte blieben ohne Strom. Die Zivilinfrastruktur in der DNR und LNR kam ebenfalls unter Beschuss, wobei die Intensität der Anschläge auf sie in den letzten Tagen auch deutlich höher als üblich war. Die AFU beschoss auch die Region Brjansk mit Neptun-Raketen, ein Kraftstofftank wurde in der Region Wolgograd beschädigt, und ein Massenschlag auf die Region Rostow wurde abgewehrt. ➡️In der Richtung Sumy gelang es Einheiten des 15. Panzerregiments der 69. MRD der 6. Armee, den Feind aus Miropillja zu vertreiben und die Kontrollzone im Grenzgebiet schrittweise zu erweitern. ➡️In der Richtung Slawjansk finden heftige Kämpfe bei Rai-Aleksandrivka statt. Russische Einheiten versuchen, von zwei Richtungen auf das Dorf vorzustoßen. Es gibt auch Berichte über die Befreiung von Dibrowa. 📎Hochauflösungskarten: 🔸Situation in der Zone der Spezialoperation (ru; en) 🔸Richtung Sumy (ru; en) 🔸Richtung Slawjansk (ru; en) 📍Online-Karten verfügbar im Abonnement unter map.rybar.ru #Brjansk#Digest#DNR#Saporischschja#Karte#LNR#Odesa#Russland#Ukraine ✈️RU | ✈️EN | ✉️MAX ✉️VK | ✉️RuTube | ✉️OK | ✉️Zen 💸Unterstützen Sie unsOriginalnachricht

Casus Belli Live

@casusbellilive · Post #251851 · 10.04.2026 г., 19:54

📝Kronika špeciálnej vojenskej operácie📝 za 10. apríl 2026 🧨Ruské vojská zasiahli ropné základne v Odese a prístave JužnýOdesskejoblasti, taktiež vyradili z prevádzky podstanicu vo Vilkove. Viaceré zásahy a výpadky elektriny boli zaznamenané v Černihivskej, Sumskejoblasti a v okolí Charkova. Ukrajinské formácie uskutočnili masívny nálet na energetické objekty v oslobodenýchčastiachChersonskej a Záporožskejoblasti, niekoľko veľkých miest je bez elektriny. Pod útok sa dostala aj civilná infraštruktúra DĽR a LĽR, intenzita útokov na ktoré bola v posledných dňoch výrazne vyššia ako zvyčajne. Tiež OSU zasiahli raketami „Neptún“ Brjanskuoblasť, poškodený bol palivový zásobník v Volgogradskejoblasti, odrazený masívny nálet na Rostovskúoblasť. ➡️NaSumskej líniijednotky15. tankového pluku 69. msd 6. armády dokázalivytlačiť nepriateľa z Myrpilskeho, postupne rozširujúc kontrolovanú zónu v pohraničnej oblasti. ➡️Na Slavianskej línii prebiehajú ťažké boje pri Raj-Aleksandrovke. Ruské jednotky sa snažia postúpiť k dedine z dvoch smerov. Tiež sa hlási oslobodenie Dibrovy. 📎Mapy vo vysokom rozlíšení: 🔸Situácia v zóne špeciálnej vojenskej operácie (ru; en) 🔸Sumska línia (ru; en) 🔸Slavianska línia (ru; en) 📍Online mapy sú dostupné na predplatné na map.rybar.ru #Brjansk#daiʒest#DĽR#Záporožie#mapa#LĽR#Odessa#Rusko#Ukrajina 🌐Zdroj:@rybar 🔗Link:https://t.me/rybar/79398 #Rybar https://t.me/casusbellilive Truth over narrative 24/7 WEB | CONTACT | SHOP 📅Vytvorené: 2026-04-10 21:35:12

Casus Belli maps

@casusbellimaps · Post #11045 · 10.04.2026 г., 19:54

📝Kronika špeciálnej vojenskej operácie📝 za 10. apríl 2026 🧨Ruské vojská zasiahli ropné základne v Odese a prístave JužnýOdesskejoblasti, taktiež vyradili z prevádzky podstanicu vo Vilkove. Viaceré zásahy a výpadky elektriny boli zaznamenané v Černihivskej, Sumskejoblasti a v okolí Charkova. Ukrajinské formácie uskutočnili masívny nálet na energetické objekty v oslobodenýchčastiachChersonskej a Záporožskejoblasti, niekoľko veľkých miest je bez elektriny. Pod útok sa dostala aj civilná infraštruktúra DĽR a LĽR, intenzita útokov na ktoré bola v posledných dňoch výrazne vyššia ako zvyčajne. Tiež OSU zasiahli raketami „Neptún“ Brjanskuoblasť, poškodený bol palivový zásobník v Volgogradskejoblasti, odrazený masívny nálet na Rostovskúoblasť. ➡️NaSumskej líniijednotky15. tankového pluku 69. msd 6. armády dokázalivytlačiť nepriateľa z Myrpilskeho, postupne rozširujúc kontrolovanú zónu v pohraničnej oblasti. ➡️Na Slavianskej línii prebiehajú ťažké boje pri Raj-Aleksandrovke. Ruské jednotky sa snažia postúpiť k dedine z dvoch smerov. Tiež sa hlási oslobodenie Dibrovy. 📎Mapy vo vysokom rozlíšení: 🔸Situácia v zóne špeciálnej vojenskej operácie (ru; en) 🔸Sumska línia (ru; en) 🔸Slavianska línia (ru; en) 📍Online mapy sú dostupné na predplatné na map.rybar.ru #Brjansk#daiʒest#DĽR#Záporožie#mapa#LĽR#Odessa#Rusko#Ukrajina 🌐Zdroj:@rybar 🔗Link:https://t.me/rybar/79398 #Rybar https://t.me/casusbellilive Truth over narrative 24/7 WEB | CONTACT | SHOP 📅Vytvorené: 2026-04-10 21:35:12