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

Пребарај: #gediontimotheos

当前筛选 #gediontimotheos清除筛选

ሰርጌይ ላቭሮቭ ለ130ኛው የዓድዋ ድል በዓል የእንኳን አደረሳችሁ መልዕክት አስተላለፉ ******************** የሩሲያ የውጭ ጉዳይ ሚኒስትር ሰርጌይ ላቭሮቭ ለኢፌዴሪ የውጭ ጉዳይ ሚኒስትር ጌድዮን ጢሞቴዎስ (ዶ/ር) እና ለመላው የኢትዮጵያ ሕዝብ ለ130ኛው የዓድዋ ድል በዓል የእንኳን አደረሳችሁ መልዕክት አስተላልፈዋል። የውጭ ጉዳይ ሚኒስትሩ በመልዕክታቸው፤ የዓድዋ ድል በአፍሪካ ታሪክ አንዲት ሀገር በቅኝ ገዥ ኃይል ላይ የተቀዳጀችው የመጀመሪያው ድል በመሆኑ በዓለም አቀፍ ደረጃ ከፍተኛ ተጽዕኖ የፈጠረ መሆኑን ገልጸዋል። ድሉ የኢትዮጵያውያንን የጽናት መንፈስ ከማረጋገጡ ባለፈ በመላው አፍሪካ ለሚካሄዱ የነፃነት ትግሎች መነሻ መሆኑንም አክለዋል። ሩሲያ እና ኢትዮጵያ ለረጅም ዘመናት የዘለቀ የወዳጅነት ታሪክ እንዳላቸው የጠቀሱት ሰርጌይ ላቭሮቭ፤ በየተለያዩ ዓለም አቀፍ ድርጅቶች በተለይም በተባበሩት መንግሥታት ድርጅት እና በብሪክስ ማዕቀፍ ውስጥ ፍትሃዊ የዓለም ሥርዓት እንዲኖር በጋራ እየሠሩ መሆኑን ጠቁመዋል። በተጨማሪም በሁለቱ ሀገራት መካከል በንግድ፣ በኢኮኖሚ፣ በሳይንስ እና በባህል ዘርፎች ትብብሮች እያደጉ መሆናቸውን መግለጻቸውን የሩሲያ የውጭ ጉዳይ ሚኒስቴር መረጃ አመልክቷል። በኢትዮጵያ የኒውክሌር ኃይል ማመንጫ ግንባታን ጨምሮ፣ የደጃዝማች ባልቻ ሆስፒታልን መልሶ መገንባት እና የጋራ ባዮሎጂካል ምርምር ማዕከል መመሥረት ዋና ዋናዎቹ የትብብር ፕሮጀክቶች መሆናቸውን ሚኒስትሩ በመልዕክታቸው ጠቅሰዋል። #EBC#Ethiopia#Russia#Adwa130#Diplomacy#SergeyLavrov#GedionTimotheos#BRICS