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 слични објави

Пребарај: #globaloil

当前筛选 #globaloil清除筛选
Reuters: World

@reutersworldchannel · Post #149143 · 08.10.2021 г., 22:28

Global energy prices surge amid supply crunch Crude oil prices jumped to a seven-year high of $80 a barrel in the U.S. amid a global surge in energy prices as demand spurred by the economic recovery outstrips supply. #GlobalOil#Crude#News#Reuters Subscribe: http://smarturl.it/reuterssubscribe Reuters brings you the latest business, finance and breaking news video from around the globe. Our reputation for accuracy and impartiality is unparalleled. Get the latest news on: http://reuters.com/ Follow Reuters on Facebook: https://www.facebook.com/Reuters Follow Reuters on Twitter: https://twitter.com/Reuters Follow Reuters on Instagram: https://www.instagram.com/reuters/?hl=en ➖@reutersworldchannel➖

Crypto M - Crypto News

@CryptoM · Post #64801 · 10.04.2026 г., 00:36

🚀 U.S. President Trump Criticizes Iran's Handling of Strait of Hormuz Oil Passage U.S. President Donald Trump has expressed dissatisfaction with Iran's management of oil transit through the Strait of Hormuz. According to NS3.AI, Trump stated that Iran's actions are not in line with an agreement he claims was established. The Strait of Hormuz is a critical chokepoint for global oil shipments, and any disruptions can have significant implications for international markets. #Trump#Iran#StraitOfHormuz#OilTransit#GlobalOil#InternationalMarkets#NS3AI

Crypto M - Crypto News

@CryptoM · Post #65142 · 11.04.2026 г., 11:44

🚀 Trump Highlights Incoming Oil Tankers to the U.S. On April 11, U.S. President Donald Trump announced on his Truth platform that numerous empty oil tankers, including some of the world's largest, are currently en route to the United States. According to BlockBeats, these tankers are carrying some of the highest quality oil and natural gas globally. Trump emphasized that the U.S. oil reserves surpass the combined reserves of the second and third largest oil-producing countries, both in quantity and quality. He invited attention to this development, urging prompt action. #Trump#OilTankers#USOilReserves#NaturalGas#Energy#GlobalOil#TrumpAnnouncement#USPresident#BlockBeats

Crypto M - Crypto News

@CryptoM · Post #64691 · 09.04.2026 г., 14:11

🚀 German Chancellor Merz Supports Maritime Operations in Strait of Hormuz German Chancellor Merz has expressed his willingness to support maritime operations in the Strait of Hormuz, contingent upon authorization. According to NS3.AI, this statement comes amid ongoing discussions about ensuring security and stability in the region. The Strait of Hormuz is a critical passage for global oil shipments, and its security is vital for international trade. Chancellor Merz's support highlights Germany's commitment to contributing to international efforts aimed at maintaining safe passage through this strategic waterway. #GermanChancellor#Merz#MaritimeOperations#StraitOfHormuz#InternationalTrade#Security#GlobalOil#Shipping#Germany#InternationalEfforts#StrategicWaterway#GlobalStability