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

Резултати

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

Пребарај: #supremeleader

当前筛选 #supremeleader清除筛选
Crypto M - Crypto News

@CryptoM · Post #65253 · 12.04.2026 г., 10:35

🚀 Iran's Foreign Policy Focuses on National Protection, Adviser States Iran's Supreme Leader's foreign affairs adviser, Velayati, stated on his social media platform on the 12th that Iran's foreign policy consistently adheres to the principle of 'protecting our homeland.' According to Odaily, he emphasized that control over the Strait of Hormuz is firmly in Iran's hands. #Iran#ForeignPolicy#NationalProtection#StraitOfHormuz#Velayati#SupremeLeader#HomelandProtection

Google Facts™ [ ️@googlefactss🌎]

@googlefactss · Post #40796 · 14.03.2026 г., 20:05

Mojtaba Khamenei became Supreme Leader of Iran after his father, Ali Khamenei, was killed in a U.S.–Israeli airstrike. He leads with hard-line policies, controlling the military, security forces, and political decisions. For ordinary Iranians, this means strict government control, limited political freedom, limited internet, harsh enforcement of laws, and continued tensions with the West. Daily life and dissent will likely remain tightly restricted under his rule. 🕌🇮🇷⚔️ [Read more] @googlefactss #Iran#MojtabaKhamenei#SupremeLeader#politics#newsfacts#freeIran#protests#womensrights

Google Facts™ [ ️@googlefactss🌎]

@googlefactss · Post #40731 · 03.03.2026 г., 17:02

Ali Hosseini Khamenei was born on 19 April 1939 in Mashhad, Iran. He was a Shiite cleric and political leader. He took part in the 1979 Iranian Revolution. He later became President of Iran from 1981 to 1989 during the Iran–Iraq War. On 4 June 1989, after the death of Ruhollah Khomeini, he was chosen as the 2nd Supreme Leader of Iran. He held this role until 28 February 2026. As Supreme Leader, he had authority over the military, judiciary, state media, intelligence services, and foreign policy. He oversaw Iran’s nuclear program and strengthened the Islamic Revolutionary Guard Corps. His government carried out crackdowns on protests and dissent. He was reported killed on 28 February 2026 during Israeli missile attacks in Tehran. His death was confirmed on 1 March 2026. His son is replacing him. 🏛️🇮🇷📜 [Read more] @googlefactss #AliKhamenei#Iran#SupremeLeader#dictator#IranHistory#MiddleEast#freeIran#LiberateWomen#protest