@WorldNews · Post #74074 · 12.04.2026 г., 19:39
Orbán on course to lose Hungary’s election, according to early results [Read FullArticle] @WorldNews#HungaryElection#Orbán#WorldNews
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
Пребарај: #hungaryelection
@WorldNews · Post #74074 · 12.04.2026 г., 19:39
Orbán on course to lose Hungary’s election, according to early results [Read FullArticle] @WorldNews#HungaryElection#Orbán#WorldNews
Hashtags
@WorldNews · Post #74067 · 12.04.2026 г., 14:29
High early turnout in Hungary’s pivotal election [Read FullArticle] @WorldNews#HungaryElection#EarlyTurnout#WorldNews
@WorldNews · Post #74044 · 11.04.2026 г., 20:04
Ukraine has warned that former members of a disbanded special police unit, who fled to Russia after 2014, may have been brought to Budapest by the Kremlin to stage provocations ahead of Hungary’s parliamentary elections [Read FullArticle] @WorldNews#UkraineNews#HungaryElection#KremlinProvocation
@WorldNews · Post #73933 · 07.04.2026 г., 08:04
JD Vance due in Hungary to back Orban's re-election bid [Read FullArticle] @WorldNews#HungaryElection#Orban#JDVance
Hashtags
@WorldNews · Post #74122 · 14.04.2026 г., 17:44
‘We were never friends’: Kremlin plays down loss of ally following Orbán’s election defeat | Hungary [Read FullArticle] @WorldNews#HungaryElection#Orbán#KremlinNews
@WorldNews · Post #73873 · 04.04.2026 г., 19:49
Hungary’s main opposition party has said it would move to amend the constitution to limit prime ministers to two terms if it wins next week’s election—a move that would effectively bar incumbent Viktor Orbán from ever returning to office [Read FullArticle] @WorldNews#HungaryElection#Orbán#ConstitutionalChange
@WorldNews · Post #74056 · 12.04.2026 г., 07:34
Majority of Hungarians believe April 12 election will be rigged or manipulated [Read FullArticle] @WorldNews#HungaryElection#ElectionIntegrity#EUNews
@WorldNews · Post #73969 · 08.04.2026 г., 14:59
Germany accuses JD Vance of hypocrisy over claim that EU meddled in Hungary’s election [Read FullArticle] @WorldNews#GermanyNews#HungaryElection#EUInfluence
@WorldNews · Post #74089 · 13.04.2026 г., 12:24
European leaders celebrate Péter Magyar’s victory in a stunning Hungarian election [Read FullArticle] @WorldNews#HungaryElection#EuropeanPolitics#PéterMagyar victory
@WorldNews · Post #74078 · 12.04.2026 г., 20:14
Hungarian Prime Minister Viktor Orban has congratulated centre-right challenger Peter Magyar on his election victory [Read FullArticle] @WorldNews#HungaryElection#Orban#PeterMagyar
@WorldNews · Post #74076 · 12.04.2026 г., 19:39
With almost 30% of votes counted, Tisza is projected to win 132 seats out of 199 seats in the Hungarian legislature, the national election office said. [Read FullArticle] @WorldNews#HungaryElection#EuropeanPolitics#VoteCounting
@WorldNews · Post #74083 · 13.04.2026 г., 00:59
Orban ousted after 16 years as Hungarians flock to pro-EU rival [Read FullArticle] @WorldNews#HungaryElection#OrbanOusted#EUalleyway