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

Резултати

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

Пребарај: #sturm

当前筛选 #sturm清除筛选
AI match predictions

@ai_match_prediction · Post #11470 · 12.04.2026 г., 05:07

Austria Bundesliga🇦🇹 2026-04-12 12:30 UTC Sturm Graz vs. TSV Hartberg Predicted outcome: Draw✅ Predicted score: 1:1 Actual: Draw 0:0 #Sturm#TSVHartberg 2026-04-12 15:00 UTC Austria Vienna vs. Rapid Vienna Predicted outcome: Draw✅ Predicted score: 1:1 Actual: Draw 1:1 #AustriaVienna#RapidVienna #Football#AustriaBundesliga

AI match predictions

@ai_match_prediction · Post #11886 · 03.05.2026 г., 05:07

Austria Bundesliga🇦🇹 2026-05-03 12:30 UTC Austria Vienna vs. TSV Hartberg Predicted outcome: Austria Vienna✅ Predicted score: 2:1 Actual: Austria Vienna 1:0 #AustriaVienna#TSVHartberg 2026-05-03 15:00 UTC Red Bull Salzburg vs. Sturm Graz Predicted outcome: Sturm Graz❌ Predicted score: 1:2 Actual: Draw 1:1 #RedBullSalzburg#Sturm #Football#AustriaBundesliga

AI match predictions

@ai_match_prediction · Post #12026 · 10.05.2026 г., 09:06

Austria Bundesliga🇦🇹 2026-05-10 15:00 UTC Rapid Vienna vs. Austria Vienna Predicted outcome: Rapid Vienna❌ Predicted score: 2:1 Actual: Austria Vienna 0:2 #RapidVienna#AustriaVienna 2026-05-10 15:00 UTC Lask Linz vs. Red Bull Salzburg Predicted outcome: Red Bull Salzburg❌ Predicted score: 2:3 Actual: Lask Linz 2:1 #LaskLinz#RedBullSalzburg 2026-05-10 15:00 UTC TSV Hartberg vs. Sturm Graz Predicted outcome: Sturm Graz✅ Predicted score: 1:2 Actual: Sturm Graz 2:4 #TSVHartberg#Sturm #Football#AustriaBundesliga

AI match predictions

@ai_match_prediction · Post #11765 · 26.04.2026 г., 09:08

Austria Bundesliga🇦🇹 2026-04-26 12:30 UTC Rapid Vienna vs. Red Bull Salzburg Predicted outcome: Red Bull Salzburg❌ Predicted score: 1:2 Actual: Rapid Vienna 1:0 #RapidVienna#RedBullSalzburg 2026-04-26 12:30 UTC TSV Hartberg vs. Lask Linz Predicted outcome: Lask Linz✅ Predicted score: 1:2 Actual: Lask Linz 1:5 #TSVHartberg#LaskLinz 2026-04-26 15:00 UTC Sturm Graz vs. Austria Vienna Predicted outcome: Sturm Graz❌ Predicted score: 2:1 Actual: Draw 1:1 #Sturm#AustriaVienna #Football#AustriaBundesliga

AI match predictions

@ai_match_prediction · Post #11660 · 22.04.2026 г., 09:05

Austria Bundesliga🇦🇹 2026-04-22 16:30 UTC Red Bull Salzburg vs. Austria Vienna Predicted outcome: Draw❌ Predicted score: 2:2 Actual: Red Bull Salzburg 3:1 #RedBullSalzburg#AustriaVienna 2026-04-22 16:30 UTC Rapid Vienna vs. TSV Hartberg Predicted outcome: Draw❌ Predicted score: 1:1 Actual: TSV Hartberg 0:2 #RapidVienna#TSVHartberg 2026-04-22 18:30 UTC Sturm Graz vs. Lask Linz Predicted outcome: Draw✅ Predicted score: 1:1 Actual: Draw 1:1 #Sturm#LaskLinz #Football#AustriaBundesliga

AI match predictions

@ai_match_prediction · Post #11601 · 19.04.2026 г., 05:07

Austria Bundesliga🇦🇹 2026-04-19 12:30 UTC Austria Vienna vs. Red Bull Salzburg Predicted outcome: Red Bull Salzburg✅ Predicted score: 1:2 Actual: Red Bull Salzburg 1:3 #AustriaVienna#RedBullSalzburg 2026-04-19 12:30 UTC TSV Hartberg vs. Rapid Vienna Predicted outcome: Draw✅ Predicted score: 1:1 Actual: Draw 2:2 #TSVHartberg#RapidVienna 2026-04-19 15:00 UTC Lask Linz vs. Sturm Graz Predicted outcome: Sturm Graz❌ Predicted score: 1:2 Actual: Draw 1:1 #LaskLinz#Sturm #Football#AustriaBundesliga

AI match predictions

@ai_match_prediction · Post #11320 · 05.04.2026 г., 05:07

Austria Bundesliga🇦🇹 2026-04-05 12:30 UTC Lask Linz vs. Austria Vienna Predicted outcome: Draw❌ Predicted score: 2:2 Actual: Lask Linz 4:1 #LaskLinz#AustriaVienna 2026-04-05 12:30 UTC TSV Hartberg vs. Red Bull Salzburg Predicted outcome: Draw❌ Predicted score: 1:1 Actual: Red Bull Salzburg 1:2 #TSVHartberg#RedBullSalzburg 2026-04-05 15:00 UTC Rapid Vienna vs. Sturm Graz Predicted outcome: Draw❌ Predicted score: 2:2 Actual: Sturm Graz 0:2 #RapidVienna#Sturm #Football#AustriaBundesliga

Russisches Haus in Berlin

@rushaus · Post #1410 · 27.09.2024 г., 10:18

🎞️ Die Verfilmung des Romans „Drei Minuten des Schweigens" vom Dissidenten und Emigranten Georgij Wladimow ist 2023 in Russland unter dem Titel „Dompfaff” rausgekommen und ist ein spannender Actionfilm vom Regisseur Boris Chlebnikov.🎥 Das Drama erzählt von dem Lebens an Bord⛴️, einem schrecklichen Sturm⛈️ und einem Generationenkonflikt: Zwei junge Studenten einer Seefahrtschule stoßen mit einem Team erfahrener Matrosen zusammen.⚓️ Seid am 3. Oktober um 19:00 Uhr dabei und erfahrt, wozu dieses Unwetter am Meer🌊 geführt hat! 📺Der Film wird in russischer Sprache mit englischen Untertiteln gezeigt. 🍿18+ 🎟️ Eintritt frei #action#drama#sturm#matrosen#russischeshausberlin#russischeskino#gratisevent#generationenkonflikt#bord#dampfaff#verfilmung#roman