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

Пребарај: #bobnar

当前筛选 #bobnar清除筛选
Ultimora.net - POLITICS

@ultimoraPOLITICS · Post #39837 · 03.06.2022 г., 15:45

#Slovenia Il Primo Ministro Robert #Golob (#GS|Verdi) ha presentato il suo Governo. Di seguito la lista dei Ministri: -Primo Ministro: Robert Golob (GS); -Vice Primo Ministro e Ministro della Salute: Danijel Bešič #Loredan (GS); -Vice Primo Ministro e Ministra degli Affari Esteri ed Europei: Tanja #Fajon (#SD|S&D); -Vice Primo Ministro e Ministro del Futuro Solidale: Luka #Mesec (#L|LEFT); -Ministra delle Politiche Agricole, Forestali e Alimentari: Irena #Shinko (GS); -Ministra dell'Istruzione: Amalia #Žakelj (GS); -Ministro delle Finanze: Klemen #Boštjančič (GS) -Ministro dell'Istruzione Superiore, della Scienza e dell'Innovazione: Igor #Papič (GS); -Ministro delle risorse naturali e della pianificazione del territorio: Uroš #Brežan (GS); -Ministra della Pubblica Amministrazione: Sanja Ajanovic #Hovnik (GS); -Ministro dell'ambiente, del clima e dell'energia: Bojan #Kumer (GS); -Ministra dell'Interno: Tatjana #Bobnar (GS); -Ministro della Difesa: Marjan #Šarec (#LMŠ|RE); -Ministro delle Infrastrutture: Alenka #Bratušek (#SAB|RE); -Ministro dell'Economia, del Turismo e dello Sport: Matjaž #Han (SD); -Ministra della Giustizia: Dominika Švarc #Pipan (SD); -Ministro dello Sviluppo Regionale e della Coesione: Aleksander #Jevšek (SD); -Ministra della Cultura: Asta #Vrečko (L); -Ministro del Lavoro, della Famiglia, degli Affari Sociali e delle Pari Opportunità: Simon #Maljevac -Ministro per gli sloveni all'estero: Matej #Arčon (GS); -Ministra per le Trasformazione Digitale: Emilia Duh #Stojmenova (GS); -Ministro per lo sviluppo e la politica di coesione europea: Aleksander #Jevšek. @UltimoraPolitics24