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

Резултати

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

Пребарај: #adwaspirit

当前筛选 #adwaspirit清除筛选

ከዓድዋ እስከ ሕዳሴ፤ ከሕዳሴ እስከ ባሕር በር! ********************** ዓድዋ ለእኛ ተራራን የመናድ፣ የማይቻለውን የመቻል እና የአንድነት ትልቅ ማህተማችን ነው። ያ ትናንት በዓድዋ ተራራዎች ላይ የነደደው የድል መንፈስ፣ ዛሬም በደምስራችን ውስጥ አለ! ትናንት፦ በዓድዋ የጥቁር ሕዝቦች የነጻነት ፋና ሆንን። ዛሬ፦ ያው የማይበገረው የዓድዋ መንፈስ ታላቁን የሕዳሴ ግድባችንን ዳር አደረሰ። በስንዴ ሉዓላዊነት ታሪክ ተሠራ፤ የዓባይን ወንዝ ለብርሃን እና ለብልፅግና አዋልነው። ነገ፦ ቀጣዩ የታሪክ ምዕራፍ ተጀምሯል፤ የባሕር በር ጉዳይ የሕልውናችን፣ የኢኮኖሚ ነፃነታችን እና የትውልድ ጥያቄ ነው። ትናንት በጋራ ቆመን ያላሸነፍነው ፈተና የለም፤ ዛሬም በዚያው በዓድዋ ፅናት እና በሕዳሴው ወኔ የባሕር በር ጥያቄያችንን በድል እንደምናጠናቅቅ ጥርጥር የለውም! ታሪክ ይደገማል! ኢትዮጵያ በልጆቿ አንድነት ከፍ ብላ ትቀጥላለች! #Ethiopia#AdwaSpirit#GERD#SeaAccess#የሕዳሴግድብ#የባሕርበር#EBC

ዓድዋ ትመስክር - ኢትዮጵያ የሚገባትን የባሕር በር ታገኛለች! **** ትናንት በዓድዋ ተራሮች ላይ “አንገዛም!” ብለው የጥቁር ሕዝብ የነፃነት ፋና የሆኑባት ኢትዮጵያ፣ ዛሬ ደግሞ የታሪክ፣ የሕግ እና የተፈጥሮ መብቷን ለማስከበር ዳግም ተነስታለች። ዓድዋ ያስተማረን አንድ ትልቅ እውነት አለ፤ ኢትዮጵያ በኢ-ፍትሐዊነት እና ባልተገባ መንገድ የተነፈገችውን እና የተጫነባትን ጫና እና በደል እምቢ በማለት ከመቀልበስ የሚያግዳት ምድራዊ ኃይል አለመኖሩን ነው! የባሕር በር ጥያቄ የቅንጦት ሳይሆን የኅልውና፣ የኢኮኖሚ ነፃነት እና የታሪክ ዕዳ ነው። አባቶች በደማቸው ሉዓላዊነታቸውን እንዳስበሩ ሁሉ፣ ይህ “የዓድዋ ትውልድ” ደግሞ በብልሃቱ፣ በዲፕሎማሲው እና በቆራጥነቱ ኢትዮጵያን ከአፍሪካ ቀንድ የባሕር ሞገዶች ጋር ዳግም ያገናኛታል። ትናንት ተራራው ምስክር ነበረ፤ ዛሬ ደግሞ የባሕር በሩ ምስክር ይሆናል! የኢትዮጵያ ትንሣኤ የሚረጋገጠው በምግብ ሉዓላዊነት ብቻ ሳይሆን፣ ሰማያዊውን አድማስ ዳግም በመቀላቀል ነው። ይህ ትውልድ የታሪክ ዘካሪ ሳይሆን ታሪክ ሠሪ ነው! ዓድዋ ምስክር ነው - ኢትዮጵያ ወደ ነበረችበት የባሕር በሯ ትመለሳለች! #Adwa#AdwaVictory#የባሕርበር#የዓድዋትውልድ#Ethiopia#AdwaSpirit

Red Nile

@rednile12 · Post #11074 · 27.02.2026 г., 12:30

🎙️WEEK 17 | LIVE DISCUSSION ⚔🛡My Generation & Adwa Reflecting on the 130th Anniversary of the Victory of Adwa In honor of the 130th Anniversary of the Victory of Adwa, celebrated on Yekatit 23, 2018 (E.C.), we invite you to a powerful and timely conversation on legacy, identity, and national consciousness. Tonight, on the Ethiopia First Telegram Channel, we will discuss, reflect, and critically engage on what Adwa means for our generation — and why it still matters today. Be part of this historic dialogue. 📅February 27, 2026 🕗8:00–10:00 PM (EST) | 2:00–4:00 PM (Ethiopia Time) 🎙️Host: Ethiopia First 🗣️Guest: Alexander Yohannes — Red Nile Media 🔗Join Live:https://t.me/+AAE_Pc8aWTczYTA0 — #Adwa130#VictoryOfAdwa#AdwaAnniversary#MyGenerationAndAdwa #EthiopiaFirst#RedNileMedia#EthiopianHistory#AfricanVictory #PanAfricanLegacy#Yekatit23#EthiopianPride#AdwaSpirit#EthiopiaRising