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

Резултати

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

Пребарај: #wollega

当前筛选 #wollega清除筛选
Addis Standard

@addisstandardeng · Post #21461 · 20.02.2026 г., 07:58

News: #Tulu Kappi gold mine officially launched in West #Wollega Zone The gold development project at Tulu Kappi, located in Ganji district of West Wollega, has officially begun operations. On 18 February 2026, Prime Minister Abiy Ahmed, alongside Oromia Regional President Shimallis Abdisa, government officials, and project leaders, inaugurated the construction and development work of the site. The project site lies 28 km east of Ayra town and covers approximately eight square kilometers. The project is led by KEFI Minerals, which acquired the site in 2014 from Nyota Minerals, previously engaged in exploration activities. Prior to the official launch, KEFI held consultations with local communities and government officials to agree on resettlement plans and work arrangements. https://addisstandard.com/?p=55257

በወለጋ ዞኖች እየተከናወኑ ያሉ የልማት ሥራዎች አስደሳች ናቸው - ጠቅላይ ሚኒስትር ዐቢይ አሕመድ (ዶ/ር) ************************** በወለጋ ዞኖች እየተከናወኑ ያሉ የልማት ሥራዎች ተስፋ ሰጪ እና አስደሳች መሆናቸውን ጠቅላይ ሚኒስትር ዐቢይ አሕመድ (ዶ/ር) ገለጹ። ጠቅላይ ሚኒስትሩ በዛሬው ዕለት በቄለም ወለጋ፣ በምዕራብ ወለጋ (ጊምቢ) እና በምስራቅ ወለጋ (ነቀምት) ዞኖች በመዘዋወር የተለያዩ የልማት ሥራዎችን ጎብኝተዋል። ጠቅላይ ሚኒስትሩ የወለጋ ሕዝብ ሰላም ወዳድ፣ ሥራ ወዳድ እና በፍቅር የተሞላ መሆኑን ምስክርነታቸውን ሰጥተዋል። "የወለጋ ሕዝብ ጠላቱ እንኳን ቢሆን ተጎድቶ እና ደክሞ ቢያይ ለመርዳት ልቡ የቀና፣ እጁ የተዘረጋ፣ ትምህርት እና ዕውቀት የሚወድ ሕዝብ ነው" ብለዋል። ባለፉት ጊዜያት ያጋጠሙ ልክ ያልሆኑ ጉዳዮች ቢኖሩም፣ አሁን ላይ ተጨባጭ የልማት ሥራዎች መጀመራቸውን ጠቅላይ ሚኒስትሩ ጠቁመዋል። ሕዝቡ እና አመራሩ ለሀገር ብልጽግና በጋራ እንዲቆሙ ጥሪ ያቀረቡት ጠቅላይ ሚኒስትር ዐቢይ፣ መከፋፈልን ማስወገድ፣ ሰላምን መጠበቅ እና ልማትን ማስቀጠል እንደሚገባ አስገንዝበዋል። "ወለጋ ዛሬ የደስታ ዝናብ የሚዘንብባት ምድር ናት" በማለት፣ ይህ መልካም ጅምር እንዳይስተጓጎል ሁሉም በጋራ ለሀገር ልማት እንዲቆም ጥሪያቸውን አስተላልፈዋል። በሀብተሚካኤል ክፍሉ #EthiopianBroadcastingCorporation#Ebcdotstream#Ethiopia#PMAbiy#Wollega#Development

Ashara Media - አሻራ ሚዲያ

@ashara_media · Post #47886 · 26.04.2026 г., 01:40

#GPE_EarlyWarning April 24, 2026 Urgent Information: #Wollega‼️ Specific areas: #EastWollega Zone, #AngerGutin town It has been five days since five district (woreda) leaders from areas in the East Wollega Zone with significant Amhara populations began a closed-door meeting in Anger Gutin town, alongside high-ranking officials from the regional level. Our sources have confirmed that an agreement has been reached to launch a large-scale attack against the Amhara people. Therefore, we urge the entire population to take all necessary precautions and preparations. ___________________ For more updates follow us on: ➡️ Facebook: https://facebook.com/gpethiopia ➡️ X: https://X.com/gpethiopia ➡️ Instagram: https://instagram.com/gpethiopia ➡️ TikTok: https://www.tiktok.com/@gpethiopia ➡️ Telegram: https://t.me/gpe_central ➡️ WhatsAPP: https://whatsapp.com/channel/0029VaAazxGBFLgaX9umXK2M ➡️ Medium: https://gpethiopia.medium.com/