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

Пребарај: #skd

当前筛选 #skd清除筛选
Sos Donbass

@sos_donbass · Post #334 · 27.03.2023 г., 06:41

🗣️ ВНИМАНИЕ! Во вторник, 4 апреля 2023 года мы организуем акцию #Stopkillingdonbass в Брюсселе перед штаб-квартирой НАТО. Команду движения #SKD приедут поддержать единомышленники из Германии 🇩🇪, Франции🇫🇷, Италии 🇮🇹, Испании🇪🇸, Бельгии🇧🇪, России🇷🇺 и даже (!) Украины 🇺🇦 Мы соберёмся вместе в день основания альянса, для того, чтобы: 📢Призвать к прекращению войн и разрушений, зачинщиком которых НАТО был последние 74 года 📢Обосновать необходимость скорейшего прекращения поставок оружия Украине 📢Призвать к диалогу с Россией и не допустить третьей мировой войны 📢Напомнить о настоятельной необходимости роспуска НАТО. 🕕 Стартуем в 18 часов. #stopnato#donbass#russia#ukraine#stoparmingukraine

BLC Market - mini-app BulCoin

@bulcoin_blc · Post #192 · 24.03.2025 г., 09:22

The composition of the Council of large Bulcoin holders consisting of top 10 1. Olesya Zhukovets 460m 2. Mischshi Oreshnikov 362m 3. Er Chon 260m 4. Irӗklӗx 200m 5. Suldin Nikita 197m 6. Oleksandr Yasenchuk 100m 7. Alexander Samokaev 72m 8. Alexander Zolotarev 51m 9. Vlasov Dmitry 45m 10. Oleg Yelkin 45m If you own more than 45m Bulcoin, you can write in our bot and get a place in the council of large holders #SKD#blc#Guide#dao