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

Резултати

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

Пребарај: #gilan

当前筛选 #gilan清除筛选

Иранский рис🌾 Рисоводство в Иране, процветает благодаря уникальным климатическим условиям северных регионов. Субтропический, влажный климат Гиляна, Мазендерана характеризующийся обильными осадками и мягкой зимой, обеспечивает идеальную среду для выращивания риса. Ландшафт провинций усеян рисовыми полями, которые аккуратно затапливаются во время дождливого сезона, создавая идеальные условия для выращивания риса. Как правило, сначала рис проращивают в специальных ящиках, а затем проросшие ростки высаживают на поле. В Иране это делается в т.ч. вручную. А зачем так много воды?Логичный вопрос. Сам рис относится к влаголюбивым растениям и способен переносить нахождение в затопленном месте. Этим качеством риса и пользуется фермеры. Так как большинство сорняков не могут выжить в таких условиях. А некоторые страны практикуют суходольное рисоводство. При этой технологии рис выращивается на обычных, незаливаемых полях. Правда, его урожайность при таком методе выращивания несколько меньше, но не из-за недостатка влаги, а по причине докучливых сорняков. #Иран#Ирантур#Gilan#Iran Иран — тонкости туризма

Город дождей В есть в Иране свой город дождей, это город Решт. В Реште 160 дней в год идут дожди. Находится этот город в остане Гилян, в 327 километрах от Тегерана. Некогда Решт играл важную роль в экономике Ирана. Это были ворота Ирана в Россию и Европу, поэтому на него оказала влияние западная архитектура. Здесь была построена первая публичная библиотека Ирана (1852г.), и это был первый город в Иране, где девочкам разрешили ходить в школу (1898 г.) В Реште было открыто российское консульство в 1859 году. *ролик из сети #Нозари#Ирангид#Iran#Gilan#RashtИран - тонкости туризма

Двери - двери, а вот и балконы подъехали Все балконы с нашего прошлогоднего вояжа по северным территориям Ирана. Мазендеран ❤️и Гилян любовь с первого взгляда. Кто пропустил наше каспийское путешествие: ✅Рисовые поля Каспия ✅Шомаль ✅Мазендеран за две минуты ✅ Открываем нетипичный Иран ✅Что привезти из Мазендерана #Иран#Мазендеран#Гилян#Лахиджан#Iran#Gilan Иран — тонкости туризма

Вопрос: "в Иране растут оливки?" 🫒 Родиной оливковых деревьев является Юго-Западная Азия. Оливки в Иране прекрасно себя чувствуют. Иран занимает 14-е место в мире по площадям, выделенным под выращивание оливок, и 17-е по объему производства.Ведущие регионы выращивания оливок в Иране включают провинции Фарс, Керман, Хормозган, Систан-Белуджистан, Казвин, Гилян, Голестан и Зенджан. *На фотографиях масло и маринованные оливки в придорожном магазинчике на пути в г. Решт (провинция Гилян). #Иран#Иранотдых#Нозари#Iran#iran#Иранеда#رشت‎ #Rasht#rasht#Gilan Иран — тонкости туризма

DiDiPlusTV

@didiplustv · Post #98 · 20.10.2025 г., 12:11

84. Традиционный иранский завтрак #iran#иран#тегеран#tehran#travel#еда#food#gilan#mazandaran#traditions#традиции#завтрак#breakfast#DiDiPlusTV

12
ПретходнаСтраница 1 од 2Следна