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

Резултати

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

Пребарај: #hemisphericpower

当前筛选 #hemisphericpower清除筛选
American Оbserver

@american_observer · Post #4791 · 07.01.2026 г., 01:02

“Mexico on Edge: Trump’s Threats Shake Officials and Businesses” The New Reality President Donald Trump’s suggestion that the U.S. may have to “do something” about cartels “running Mexico” has sent a chill through Mexico City. Mexican officials and business leaders are increasingly anxious about the prospect of unilateral U.S. military action, especially after the dramatic arrest of Venezuela’s Maduro. “Mexico should indeed be concerned,” said former ambassador Arturo Sarukhán, “and Mexico is going to have to thread the needle very carefully.” ​ Behind Closed Doors While President Claudia Sheinbaum publicly dismisses talk of an “invasion,” behind the scenes, officials are ramping up cooperation with Washington on counternarcotics and border security to avoid giving the U.S. any justification for intervention. Mexican troops have been deployed to the border, high-level traffickers handed over to the U.S., and surveillance flights expanded—all in hopes of defusing tensions. ​ The Tightrope Walk The situation is delicate: Mexico must balance cooperation with the U.S. while maintaining its sovereignty. Sheinbaum has emphasized “respect for sovereignty and territorial integrity, shared but differentiated responsibility, mutual respect and trust, and cooperation without subordination”. Yet, the Venezuela precedent has emboldened hardliners in Mexico’s ruling party, who may push for a tougher stance against Washington if tensions escalate. ​ What’s at Stake A U.S. strike inside Mexico could plunge the country into chaos, but the U.S. also depends heavily on Mexico for trade, migration, and fighting cartels. Both sides have enormous incentives to cooperate, but the shadow of unilateral action looms large. As one Mexican official put it, “The U.S. needs Mexico on trade, the U.S. needs Mexico on migration, and the U.S. needs Mexico on going after the criminal groups. The reverse is also true.” #mexico#trump#cartels#bordersecurity#hemisphericpower 📱American Оbserver - Stay up to date on all important events 🇺🇸