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

Резултати

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

Пребарај: #acs

当前筛选 #acs清除筛选
ИХР РАН / ISC RAS

@isc_ras · Post #893 · 03.04.2023 г., 05:48

6 апреля 2023 г. в 21:00 мск состоится бесплатный вебинар Американского химического общества Characterizing and Tailoring Polymers using Nuclear Magnetic Resonance. Ссылка для регистрации: https://www.acs.org/acs-webinars/library/nuclear-magnetic-resonance.html #webinar#ACS

Hashtags

ИХР РАН / ISC RAS

@isc_ras · Post #883 · 20.03.2023 г., 05:44

23 марта 2023 г. в 20:00 мск состоится бесплатный вебинар Американского химического общества How Artificial Intelligence is Changing Drug Discovery. Ссылка для регистрации: https://www.acs.org/acs-webinars/library/ai-drug-design.html #webinar#ACS

Hashtags

Библиотека ХГУ

@libkhsu · Post #86 · 26.10.2023 г., 04:55

#ACS#публикация#openaccess#открытыйдоступ Издательство American Chemical Society (ACS) предлагает исследователям ознакомиться с подборкой недавно опубликованных статей по химии, которые стали одними из самых читаемых в сентябре 2023 года. 10 наиболее популярных статей из журналов издательства доступны в разделе «Most Read» на сайте ACS. Business illustrations by Storyset

100K20

@science_100k20 · Post #91 · 13.09.2023 г., 10:17

Один за всех и все в одном!🧪 В современном быстро меняющемся мире потребители ищут тот единственный продукт, который сможет заменить сразу несколько. Это правило касается и косметической продукции💄– к такому выводу пришла научная команда компании Chemical Abstract Services. Сегодня в рамках рубрики «быстрого знакомства с издателем» представляем вашему вниманию компанию CAS, основанную в 1907 году в качестве добровольческой организации, проводившей исследования публикаций в области химии и официально ставшей самостоятельным подразделением Американского химического общества в 1956 году. CAS - единственная организация в мире, которая проводит поиск, сбор и обработку всей публичной информации о химических соединениях🧬 Оставаться в курсе последних исследований в области косметических продуктов и не только можно подписавшись на рассылку «инсайтов» от компании CAS. #знакомствосиздателем#электронныересурсы#публикации#химия#ACS

100K20

@science_100k20 · Post #188 · 04.03.2024 г., 14:01

Предлагаем ознакомиться с графиком вебинаров от ведущих международных издательств на ближайшую неделю: 📅6 марта 2024 в 18:00 (мск) ✅ Wiley | Преимущества открытого доступа: как открытый доступ повышает влияние исследований Регистрация по ссылке. 📅 7 марта 2024 в 22:00 (мск) ✅ ACS | Искусство личностного роста Регистрация по ссылке. #вебинар#исследования#электронныересурсы#наука#библиотека#публикации#ACS#Wiley

100K20

@science_100k20 · Post #109 · 16.10.2023 г., 13:26

Предлагаем ознакомиться с графиком вебинаров от ведущих международных издательств на ближайшую неделю: 📅17 октября 2023 в 17:00 (мск) ✅AIP | Вероятностные модели и их применение Регистрация доступна по ссылке. 📅 18 октября 2023 в 17:00 (мск) ✅Questel | Базовый тренинг по Orbit Intelligence Регистрация доступна по ссылке. 📅18 октября 2023 в 19:00 (мск) ✅ACS | Сила химии: Передовые исследования в области антибиотиков и генной терапии Регистрация доступна по ссылке. #вебинар#исследования#электронныересурсы#наука#библиотека#публикации#ACS#AIP#Questel

100K20

@science_100k20 · Post #89 · 11.09.2023 г., 13:28

Предлагаем ознакомиться с графиком вебинаров от ведущих международных издательств на неделю: ✅IEEE | Работа на платформе IEEE Xplore 📅 12 сентября 2023 в 10:00 (мск) Регистрация доступна по ссылке. ✅Wiley | Преимущество открытого доступа: как открытый доступ повышает ваше влияние 📅14 сентября 2023 в 18:00 (мск) Регистрация доступна по ссылке. ✅ACS | Масс-спектрометрия: как взвесить молекулу 📅14 сентября 2023 в 21:00 (мск) Регистрация доступна по ссылке. ✅AMS | Как опубликоваться в American Mathematical Society 📅15 сентября 2023 в 10:00 (мск) Регистрация доступна по ссылке. #вебинар#исследования#цитирования#электронныересурсы#наука#библиотека#публикации#ACS#AMS#IEEE#Wiley