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

Резултати

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

Пребарај: #balticwinter

当前筛选 #balticwinter清除筛选
ББВ online

@bbvonline · Post #823 · 27.01.2026 г., 21:12

Завтра утром выступаю на Baltic WinterвАрарат Парк Хаятт. Фактически открываю спикерскую программу сразу после легендарного Андрея Баранникова. Буду говорить про впечатления от творческого продукта через применение инноваций. Это видео 2017 года тоже покажу:) На связи, ББВ #balticwinter

ББВ online

@bbvonline · Post #618 · 25.10.2025 г., 13:28

Получил приглашение выступить спикером 11 декабря на мероприятии Baltic Weekend, которое является частью Baltic Weekend— крупнейшим в Европе международным форумом по коммуникациям, цель которого — развитие экспертизы участников коммуникационного рынка и формирование сильного отраслевого сообщества в России. Организатором выступает легендарное агентство SPN Communications. Давно хотел принять участие в этом событии, где интересные эксперты обсуждают актуальные вопросы международных коммуникаций и современных технологий. Благодарю за приглашение Андрея Баранникова, руководителя проекта и моего давнего друга, который является один из лучших специалистов по PR в мире, сделавшего так много для страны и международного сотрудничества. На связи, ББВ #balticweekend #balticwinter