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

TGINSIGHT SIMILAR POSTS

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

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

Установить свойства виджета в PySide можно не только через соответствующие методы и конструктор класса. Можно их изменять с помощью метода setProperty по имени. btn = QPushButton("Click Me") btn.setProperty("flat", True) Это аналогично вызову btn.setFlat(True) Если указать несуществующее свойство, то оно просто создается btn.setProperty("btnType", "super") Получить его значение можно методом .property(name) btn_type = btn.property("btnType") Когда это может быть полезно? ▫️Можно просто хранить какие то данные в виджете и потом их доставать обратно widget = QWidget() widget.setProperty('my_data', 123) print(widget.property('my_data')) ▫️ Назначая эти свойства разным виджетам можно потом отличить виджеты во время итераци по ним. Например, найти все кнопки со свойством my_data="superbtn". Но ведь вместо кастомного свойства можно использовать objectName, будет тот же результат. Да, но y ObjectName есть ограничение - только строки. ▫️ Если нам потребуется не просто поиск а, например, сортировка по числу, то свойства позволяют нам это сделать. Поддерживается любой тип данных widget.setProperty('my_data', {'Key': 'value'}) widget.setProperty('order', 1) all_widgets.sort(key=w: w.property('order')) Но ведь Python позволяет всё вышеперечисленное сделать простым созданием атрибута у объекта widget.order = 1 widget.my_data = 123 Да, но я думаю что не надо объяснять почему не стоит так делать. К тому же, если у виджета нет свойства то метод .property(name) вернет None, а отсутствующий атрибут выбросит исключение. ▫️ Действительно полезное применение кастомным свойствам - контроль стилей. Здесь атрибутами не обойтись, нужны именно свойства. Дело в том, что в селекторах стилей можно указывать конкретные свойства виджетов на которые следует назначать стиль. Просто запустите этот код from PySide2.QtWidgets import * if __name__ == "__main__": app = QApplication([]) widget = QWidget(minimumWidth=300) layout = QVBoxLayout(widget) btn1 = QPushButton("Action 1") btn2 = QPushButton("Action 2") btn3 = QPushButton("Action 3", flat=True) layout.addWidget(btn1) layout.addWidget(btn2) layout.addWidget(btn3) # добавим кастомное свойство одной кнопке btn1.setProperty("btnType", "super") # добавляем стили widget.setStyleSheet( """ QPushButton[btnType="super"] { background-color: yellow; color: red; } QPushButton[flat="true"] { color: yellow; } """ ) widget.show() app.exec_() С помощью селектора мы избирательно назначили стили на конкретные кнопки. Как получить список всех кастомный свойств? Функция получения списка кастомных свойств отличается от получения дефолтных. def print_widget_dyn_properties(widget): for prop_name in widget.dynamicPropertyNames(): property_name = prop_name.data().decode() property_value = widget.property(property_name) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

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

Пребарај: #maine

当前筛选 #maine清除筛选
White House Watch

@Whitehousewatch · Post #17316 · 25.01.2026 г., 00:23

#Maine: La Governatrice del Maine Janet Mills (D) ha chiesto un incontro con Donald Trump per chiedergli la sospensione delle operazioni anti-immigrazione in Maine. Tali operazioni sono cominciate qualche giorno fa.

Hashtags

White House Watch

@WhiteHouseWatch · Post #17834 · 01.03.2026 г., 22:48

#Iran, #Maine: Ed è botta e risposta su X tra la senatrice Susan Collins (R-Maine), il suo potenziale sfidante democratico Graham Platner e il Senatore Ted Cruz (R-Texas). Collins ha detto che il Congresso dev'essere coinvolto "I nostri soldati altamente preparati sono nelle mie preghiere mentre svolgono la missione", una dichiarazione su cui Platner ha deciso di rispondere: "Posso rassicurarla che le sue preghiere non hanno salvato la vita dei miei amici quando sono morti nell'ultima guerra che lei ha appoggiato." A questo punto, nella diatriba si è unito Cruz: "I tuoi amici avevano anche loro tatuaggi della Germania Nazista?" Platner, infatti, sul petto ha un Totenkopf che si è procurato mentre era in congedo militare in Croazia nel 2007. "No, Ted" ha risposto Platner, "I miei amici sono morti e rimarranno per sempre Marine degli Stati Uniti, testa di cazzo."

Hashtags

White House Watch

@Whitehousewatch · Post #17448 · 10.02.2026 г., 15:12

#Maine, #GOP: Susan Collins, senatrice repubblicana del Maine ha annunciato la volontà di ricandidarsi al Senato per un sesto mandato. Collins è uno dei volti moderati dei repubblicani ed è a capo della Commissione sugli Stanziamenti, quella che si occupa di scrivere e negoziare la legge di bilancio con i democratici. Il seggio del Maine è da molto tempo tra gli obiettivi dem e non è da meno anche quest'anno. I democratici hanno bisogno di sottrarre ai repubblicani 4 seggi per ottenere la maggioranza nell'aula e Collins è l'unica senatrice repubblicana a rappresentare un seggio vinto da Kamala Harris nel 2024.

Hashtags

Crypto M - Crypto News

@CryptoM · Post #64711 · 09.04.2026 г., 15:34

🚀 Maine Set to Implement Statewide Ban on Data Center Construction Until 2027 Maine is poised to become the first U.S. state to prohibit the construction of data centers statewide, following the approval of a legislative bill this week. According to Foresight News, the measure, which aims to halt data center development until November 2027, is expected to receive final approval in the coming days. The legislation also establishes a committee to propose a regulatory framework for data centers to prevent potential increases in energy prices or other issues for Maine residents. Despite bipartisan support for the bill, it has faced strong opposition from technology groups and businesses. Critics argue that even a temporary delay in construction could hinder the state's progress. #Maine#DataCenterBan#DataCenters#EnergyPrices#TechnologyOpposition#Legislation#BipartisanSupport#EnergyRegulation#ConstructionDelay