TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #380 · 21 окт.

Регулярно приходится писать и ревьюить код, где используется PySide2-6. Заметил, что в подавляющем большинстве случаев настройка создаваемых базовых виджетов происходит через методы. Думаю, всем знаком такой способ. Простой пример с кнопкой: button = QPushButton("Click Me") button.setMinimumWidth(300) button.setFlat(True) button.setStyleSheet("font-size: 20pt") button.setToolTip("Super Button") button.clicked.connect(lambda: print("Button clicked")) Но есть и альтернативный способ - настройка через свойства. Это просто ключевые аргументы конструктора класса. Хоть они и не указаны в документации как аргументы, но они есть) Этот код делает тоже самое но с помощью Property button = QPushButton( "Click Me", minimumWidth=300, flat=True, styleSheet="font-size: 20pt", toolTip="Super Button", clicked=lambda: print("Button clicked"), ) Где это может быть полезно ▫️ Это выглядит более аккуратно и коротко, уже повод использовать ▫️ Может использоваться в заполнении лейаута, когда нам не нужно никакое другое взаимодействие с виджетом и поэтому сохранять его в переменную не требуется. Например, лейбл или кнопка. widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) layout.addWidget(QLabel("Button >", alignment=Qt.AlignRight)) layout.addWidget(QPushButton("Click Me", clicked=lambda: print("Button clicked"))) widget.show() Либо так widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) for wd in ( QLabel("Button >", alignment=Qt.AlignRight), QPushButton("Click Me", clicked=lambda: ...) ): layout.addWidget(wd) widget.show() ▫️ Можно хранить настройки в каком-то конфиге или генерировать на лету, после чего передавать как kwargs. kwargs = {"text": "Hello " * 30, "wordWrap": True} my_label = QLabel(**kwargs) Как получить полный список доступных свойств? Эта функция распечатает в терминал все свойства виджета и их текущие значения def print_widget_properties(widget): meta_object = widget.metaObject() for i in range(meta_object.propertyCount()): property_ = meta_object.property(i) property_name = property_.name() property_value = property_.read(widget) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

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

Пребарај: #residents

当前筛选 #residents清除筛选
AyTi Markaz Yaypan

@ITCenter_Yaypan · Post #1460 · 24.02.2023 г., 10:45

#ITPark#Residents 🚀 Eslatib o'tamiz, IT mutaxassislari uchun onlayn marafon boshlanmoqda ✅ IT Park rezidenti “AMEGA ITS” MCHJ “Business Intelligence Qlik” yo‘nalishidagi dasturiy ta’minot vendori bilan birgalikda Toshkentda xorijiy va mahalliy ekspertlar ishtirokida onlayn o‘quv marafonini tashkil qiladi. ✅ Oʻquv dasturida ishtirok etish uchun IT-kompaniyalar tomonidan ham, davlat va tijorat tashkilotlari tomonidan ham barcha darajadagi va yoʻnalishdagi rahbarlar, IT mutaxassislari taklif etiladi. Oʻquv dasturi 12 ta moduldan iborat boʻladi. Marafon ishtirokchilarini nazariya, amaliyot va real tatbiq holatlari kutmoqda. Sana: 1-17-martgacha Format: Onlayn Narxi: Bepul Til: O'zbek va Rus tillarida Ro'yxatdano'tishmuddati: 28-fevral, 15:00 gacha Havola: https://dataroad.uz/ru#abouthttps://dataroad.uz/ru%23about Batafsil: https://bit.ly/3xpzsOY _____________ 🚀 Напоминаем, что стартует онлайн-марафон для IT-специалистов ✅ Резидент IT Park OOO «AMEGA ITS» совместно с вендором программного обеспечения в направлении Business Intelligence Qlik организуют в Ташкенте обучающий онлайн-марафон с участием зарубежных и локальных экспертов. ✅ К участию приглашаются руководители, IT-специалисты всех уровней и направлений как со стороны IT-компаний, так и со стороны государственных и коммерческих организаций. Программа обучения включает в себя 12 модулей. Участников марафона ждут теория, практика и кейсы реальных внедрений. Даты: с 1 по 17 марта Формат: онлайн Стоимость: участие бесплатно Язык: русский и узбекский Дедлайн регистрации: до 28 февраля 15:00 Регистрация: https://dataroad.uz/ru#abouthttps://dataroad.uz/ru#about Подробно: https://bit.ly/3RZEGu4