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

Резултати

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

Пребарај: #digitalfuture

当前筛选 #digitalfuture清除筛选
AI & Law

@ai_and_law · Post #73 · 02.08.2023 г., 07:04

Leading the Way in Responsible AI: The EU's Vital Opportunity Hello, AI enthusiasts! Today, we share a policy brief by Pegah Maham and Sabrina Küspert from the Stiftung Neue Verantwortung. They highlight the EU's significant chance to take the lead in responsible AI development through the AI Act and beyond. But to seize this opportunity, understanding the risks associated with general-purpose AI models is essential. 🔹 Risks from Unreliability: One major concern is the lack of control over AI models' behavior. This unreliability could lead to serious issues like discrimination and stereotype reproduction, spreading misinformation, and violating individual privacy. 🔹 Misuse and Dual-Use AI Models: The dual-use nature of some AI models poses another challenge. While they offer immense benefits, they can also be misused by malicious actors for cybercrime, biosecurity threats, and politically motivated purposes. 🔹 Systemic Risks: As AI rapidly integrates into our society, systemic risks emerge. These risks include economic power concentration and inequality, ideological homogenization, and disruptions from the lagging adaptation of society. By comprehending and addressing these risks, the EU can establish itself as a global leader in responsible AI development. #ResponsibleAI#AIRegulation#AIAct#AIChallenges#EUAI#TechPolicy#DigitalFuture#AICommunity

IELTS|Newspapers & Magazines|English

@emagzinewspars · Post #9490 · 06.11.2025 г., 07:04

#Beijing_Review🇨🇳📕[PDF]⬇️ 6 #November2025 #Weekly_Magazines For learning, for free(dom). @backupofmagazines Beijing Review spotlights China’s #15thFiveYearPlan and its vision for a coordinated, green, and globally inclusive future. The issue unpacks Xi–Trump #Summit diplomacy in Busan, China’s push for #GenderEquality partnerships, and #RCEP as an engine for regional #Integration. Articles explore how strategic planning drives #Sustainability and global development under the banner of #Modernization. From energy transition to cyberspace security, the issue portrays a confident China charting a course for shared growth and stability. #China#GlobalGovernance#Sustainability#FiveYearPlan#RCEP#XiTrumpMeeting#ClimateAction#DigitalFuture#GenderEquality#AsiaPacific