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

Резултати

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

Пребарај: #dispute

当前筛选 #dispute清除筛选
Amazing Geography 🌍

@amazingeo · Post #441 · 08.11.2025 г., 12:31

🌍 The Kalapani region is a small Himalayan area claimed by both India and Nepal. Its strategic location at the tri-junction with China makes it a unique hotspot of geopolitical geography. ✨ #borders⚡#dispute⚡#Himalayas⚡#geography⚡#nature⚡#earth 👉subscribe Amazing Geography 👉more Channels ​

Amazing Geography 🌍

@amazingeo · Post #174 · 04.09.2025 г., 13:12

🌍 The border between Spain and Portugal includes a tiny disputed area called Olivenza, claimed by both countries for over 200 years. Its unique status shapes maps and diplomacy even today. ✨ #borders⚡#dispute⚡#Europe⚡#geography⚡#nature⚡#earth 👉subscribe Amazing Geography🌍 ​

🔴Biznes va tadbirkorlik oliy maktabida Tijorat nizolarini hal qilishning muqobil usullarini qo‘llash bo‘yicha ikki kunlik amaliy seminar yakunlandi 🇺🇿Mazkur seminar Oliy maktab tomonidan Osiyo taraqqiyot banki bilan hamkorlikda🇮🇹Italiya, 🇩🇪Germaniya, 🇵🇱Polshadan arbitraj va mediatsiya sohasining yetakchi ekspertlari, shuningdek, tijorat nizolarini arbitraj va mediatsiya asosida ko‘rib chiqishda katta tajribaga ega bo‘lgan mahalliy mutaxassislarni taklif etgan holda tashkil etildi. 🤔A two-day practical seminar on the application of alternative methods for resolving commercial disputes has been completed at the Graduate School of Business and Entrepreneurship 🇬🇧 The event was organized by the Graduate School in cooperation with the Asian Development Bank and featured leading experts in the field of arbitration and mediation from 🇮🇹Italy,🇩🇪Germany, 🇵🇱Poland, as well as local specialists with extensive experience in handling commercial disputes using arbitration and mediation. 🔴 В Высшей школе бизнеса и предпринимательствазавершился двухдневныйпрактический семинар по применению альтернативных способов разрешения коммерческих споров 🇷🇺Cеминар был организован Высшей школой при сотрудничестве с Азиатским банком развития с участием ведущих экспертов в области арбитража и медиации из 🇮🇹Италии, 🇩🇪Германии, 🇵🇱Польши, а также местных специалистов, имеющих богатый опыт в рассмотрении коммерческих споров на основе арбитража и медиации. #GraduateSchool#ADB#Dispute#Commerical 🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube

🏦 Nizolarni muqobil hal qilish orqali biznes nizolarni bartaraf etish imkoniyatlari 🇺🇿 Oliy maktabda OTB hamkorligida xususiy biznes, xo‘jalik birlashmalari va davlat organlari vakillari, tadbirkorlik subyektlari uchun tijorat nizolarini muqobil hal etish masalalari bo‘yicha ikki kunlik amaliy seminarbo‘lib o‘tmoqda. 🌀 Options for Resolving Business Disputes- Focus on Alternative Dispute Resolution. 🇬🇧A two-day practical seminaris being heldat the Graduate School, focusing on alternative dispute resolution in commercial matters for representatives of private businesses, economic associations and government agencies. 🔴 Способы разрешения бизнес-споров: акцент на альтернативные методы разрешения конфликтов 🇷🇺 В Высшей школе совместно с АБР проводится двухдневный практический семинарпо вопросам альтернативного разрешения споров в коммерческих спорах для субъектов предпринимательства, включая представителей частного бизнеса, хозяйственных объединений и государственных органов. #GraduateSchool#ADB#Dispute#Commerical 🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube

Venture Village Wall 🦄

@venturevillagewall · Post #4313 · 05.03.2025 г., 13:00

Community Divided Over Bybit's Request Bybit calls on DEX ParaSwap DAO to return 44.67 wETH (~$100,000) in fees from hacked funds. Community opinions split: some advocate for returning the funds to avoid regulatory scrutiny, while others argue that the DAO shouldn't fix centralized service mistakes. A compromise of keeping 10% as a reward was suggested. For more details, check the complete news article. #Bybit#ParaSwap#DeFi#Crypto#DAO#Hacking#Ethereum#wETH#Regulation#Funds#Fees#Community#Dispute#Security#Blockchain#Tech#FinTech#Investing#Carl#VC