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

Пребарај: #personaldevelopment

当前筛选 #personaldevelopment清除筛选
Green University CA | Official

@centralasian_greenuniversity · Post #265 · 24.10.2025 г., 08:53

Girls’ Meeting at Green University! ✅On October 23, a special gathering was held for our female students, focusing on etiquette, moral values, and personal growth. 🔄The event also featured a psychological training session that helped participants build confidence and strengthen communication skills. #GreenUniversity#StudentLife#GirlsMeeting#PersonalDevelopment ✉️[email protected] ☎️ +998 55 512 00 77 📍Location 🌐Website | 📱Telegram | 📱Instagram | 📱LinkedIn | 🟥YouTube

Velvet Pages | eLibrary 🥂

@bookslibraryofficial · Post #1252 · 11.05.2025 г., 15:44

📖Title : This Too Shall Pass ✍️Author : Julia Samuel ⭐️Rating : 3.72/5 (Goodreads) 📆Published : Mar 05, 2020 ———————————————— Summary:This Too Shall Pass by Julia Samuel is a profound exploration of how humans cope with change and emotional upheaval. Drawing on her extensive experience as a psychotherapist, Samuel presents twelve moving and deeply personal case studies that cover themes such as grief, relationships, identity, and trauma. Each story reveals how people struggle with, resist, and ultimately adapt to change. Through compassionate storytelling and psychological insight, Samuel illustrates that while change is inevitable and often painful, it also offers opportunities for growth and healing. The book is a comforting, insightful guide for anyone navigating life’s unpredictable transitions and emotional challenges. ———————————————— #nonfiction#psychology#selfhelp#personaldevelopment@Bookslibraryofficial@free_novellas@the_ancient_library

Diversity & Inclusion There is a significant relationship between competitive profit gains and diversity. Companies with gender, ethnic and racial diversity are at least 15 percent more likely to experience above-average financial returns. #Wednesday#Day-3 #personalDevelopment#selfhelp#leadership#Growth#Teambuild Read 📚:- https://t.me/Think_CreativeHub

Venture Village Wall 🦄

@venturevillagewall · Post #3634 · 21.12.2024 г., 10:23

$5.4M Funding for Tenor Tenor has raised $5.40 million on December 19, 2024. This platform enables managers to rehearse difficult conversations with realistic voice AI characters and receive instant feedback for improvement. #Funding#AI#VoiceAI#Management#Feedback#Conversations#Tech#Startup#Investment#Training#Innovation#Leadership#Simulation#Dialogue#PersonalDevelopment#Business#Growth#Application#Software#Tenor

#学习#技能习得#生产力#时间管理#一万小时定律#二十小时定律#自我提升#刻意练习#个人发展#新技能#学习曲线 #Learning#SkillAcquisition#Productivity#TimeManagement#10000HourRule#20HourRule#SelfImprovement#DeliberatePractice#PersonalDevelopment#NewSkills#LearningCurve https://www.youtube.com/watch?v=5MgBikgcWnY