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

Резултати

Пронајдени 1,000 слични објави

Пребарај: #newtgingrich

当前筛选 #newtgingrich清除筛选
Newt Gingrich

@newtgingrich · Post #4714 · 23.05.2023 г., 13:45

#newtgingrich : RT @AmerNewMajProj: Just 1 in 5 Americans agree with Biden and the Democrats that slowing the rate of spending increases is an irresponsible cut. https://t.co/Z6QdnPa5iW

Newt Gingrich

@newtgingrich · Post #4713 · 23.05.2023 г., 08:44

#newtgingrich : RT @SpeakerMcCarthy: President Biden and I just had a productive meeting in our negotiation to responsibly raise the debt limit. It should have happened months ago, but there is a path for him to avoid defaulting on the debt. https://t.co/u3rDJmrl7v

Newt Gingrich

@newtgingrich · Post #4710 · 22.05.2023 г., 18:46

#newtgingrich : The American people see strong leadership from Speaker Kevin McCarthy, and the latest polls have his favorability as the highest among Congressional leadership. https://t.co/nv7UcCb3Tc

Newt Gingrich

@newtgingrich · Post #4709 · 22.05.2023 г., 17:44

#newtgingrich : RT @GOP: .@SpeakerMcCarthy: “The Democrats since they took the majority have been addicted to spending and that’s going to stop. We’re going to spend less than we spent last year.” https://t.co/cqu1xLLsWA

Newt Gingrich

@newtgingrich · Post #4708 · 22.05.2023 г., 17:44

#newtgingrich : RT @CallyGingrich: Human trafficking survivors recently testified before members of the U.S. House of Representatives about the need for lawmakers to pass legislation to increase resources for survivors and expand efforts to hold perpetrators accountable. https://t.co/MedJ3mILN0https://t.co/oeqSNDl86E

Newt Gingrich

@newtgingrich · Post #4706 · 21.05.2023 г., 22:43

#newtgingrich : RT @SpeakerMcCarthy: I literally asked the president: "What is the number? How much debt must America have before you say, 'let's stop borrowing from China?'" https://t.co/nAd1wMtDOw

Newt Gingrich

@newtgingrich · Post #4705 · 21.05.2023 г., 21:43

#newtgingrich : RT @SpeakerMcCarthy: Just got off the phone with the president while he’s out of the country. My position has not changed. Washington cannot continue to spend money we do not have at the expense of children and grandchildren. Tomorrow, he and I will meet in person to continue negotiations.

Newt Gingrich

@newtgingrich · Post #4704 · 21.05.2023 г., 17:43

#newtgingrich : The University of Austin, TX, is taking a new innovative approach to improving the American education model. Interesting reading. @AcademicRenewal https://t.co/I1dEFJnKuq

Newt Gingrich

@newtgingrich · Post #4702 · 21.05.2023 г., 13:43

#newtgingrich : We are a lot closer to the Biden default with the President’s game playing and arrogance. House Republicans will NEVER support a Biden tax increase. Biden’s comments in Japan were dishonest and destructive. If we default it will be Biden who forced it.

Newt Gingrich

@newtgingrich · Post #4701 · 21.05.2023 г., 13:43

#newtgingrich : Speaker McCarthy and House Republicans have a tremendous opportunity to create a better American future. @amspectator https://t.co/ibQaV07PsC

123•••5•••10•••15•••20•••25•••30•••35•••40•••45•••50•••55•••60•••65•••70•••75•••80•••8384
ПретходнаСтраница 1 од 84Следна