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

Резултати

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

Пребарај: #success

当前筛选 #success清除筛选
Andijan Development Center

@adceducate · Post #7952 · 26.09.2023 г., 14:03

❗️Another band 7.5 ❗️ Kutib oling, bizda yana bitta 7.5. Student: Abbosbek Abdubakiev Attempt: First w/ British Council Listening: 8.0🤩 Reading: 8.0✊️ Writing: 6.5📚 Speaking: 7.0🔥 Overall: 7.5🫂 Abbosbek is a prime example of hard work and dedication! Congratulations to him and his teacher, Mr. Shermuhammad! #ielts#success ADC - THINK ADC, THINK IELTS

PrimeVisa

@primevisa_uz · Post #1949 · 27.03.2024 г., 04:01

#Results#Success O’quvchimiz Kanadaning Toronto Universitetiga qabul bo’ldilar. Toronto Universiteti dunyoning Top-20 talik universitetlari qatoriga kiradi. CollegeGo nomidan o’quvchimizni va oilasini tabriklaymiz! 🔥🚀 Telegram 🌐Instagram🌐

የግብርና ግብዓቶች ንፅፅር (2010 Vs 2018) ************** 💹 ትራክተር፡ 4 ሺህ 700 ➡️ 27 ሺህ 200 💹 ኮምባይነር፡ 338 ➡️ 8 ሺህ 700 💹 የመስኖ ፓምፕ፡ 6 ሺህ ➡️ 280 ሺህ #EBC#Ethiopia#ebcdotstream#agriculture#success

Andijan Development Center

@adceducate · Post #8041 · 18.11.2023 г., 06:52

🏆 ANOTHER BANGER 🏆 ⚡️IELTS 7.5 ⚡️ Student: Abdulaziz Habibullayev Attempt: First w/ IDP Tutor: Teacher Shermuhammad Listening: 8.0 🤩 Reading: 7.5 📚 Writing: 6.5 ✍️ Speaking: 7.0 🔥 🎯 OVERALL: 7.5 🎯 Abdulaziz is a prime example of hard work and dedication! Leave "+" to start your IELTS journey with us 🫵 #ielts#success#band75 THINK IELTS, THINK ADC

Крипта, крема и сплетни

@cryptospletnitsa · Post #1267 · 26.06.2024 г., 07:20

Я уже много раз писала, что состою в клубе THE BRIDGE Этим летом мы встретились в Петербурге , в разгар ПМЭФ на 2 уникальных мероприятиях. Хочу показать как это было 🔥 Отчет о встрече Not Only Crypto клуба The Bridge в Санкт-Петербурге. The Bridge Finance Club создает площадку для диалога между профессионалами в инновационных и финансах и бизнесом. Основные темы: 🔹почему после халвинга идет падение курса биткоина и когда ждать рост? Иван Тихонов, основатель Bits.Media рассказывает о своих наблюдениях за циклами главной криптовалюты в течение 12 лет. 🔹что же является главным “мостом” между крупным бизнесом и крипто рынком ответ дал Дмитрий Мачихин, основатель и CEO сервиса BitOK. 🔹Блокчейн и возможности крипторынка дали толчок развитию мелким игровым студиям, которые зарабатывают миллионы долларов с командой в 3-4 человека. Об этом рассказал Антон Титов, OG в Web3 гейминге, партнер TxA.vc, CBDO Globula Space. 🔹Успешным кейсом NFT поделился Илья Попов, со-основатель и председатель совета директоров группы компаний «Рики». Объем продаж NFT "Смешарики" на TON - 650 000 USD. 🔹Дмитрий Иванкин, со-основатель лендингового протокола daolama.co рассказал, что выдает кредиты под залог ликвидных NFT, и это начало системы нового банкинга. 🔹Александр Капитонов, CTO Merklebot DevOps solutions, прогрессор Робономики - рассказал про DePin - децентрализованную систему для вычислений и хранения данных и то, как проект Робономика развивает бизнес, совмещая физическую и цифровую структуры. Атмосфера была незабываемая - скорее смотреть! Благодарим наших партнеров: социальный проект Love Power Movement, SCS Consulting Group, Success Exchange. #TheBridgeClub#Success#Love

ПретходнаСтраница 1 од 3Следна