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

Резултати

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

Пребарај: #homepage

当前筛选 #homepage清除筛选
DYOR.io community RU

@dyorninjaru · Post #171 · 19.09.2024 г., 16:07

🤴Мы запускаем DYOR Tips. ℹ️DYOR Tips- это цикл публикаций, которые ближе познакомят пользователей с нашими основными продуктами, расскажут о том, как ими можно пользоваться и почему они могут быть полезны в применении. 🔜 Первая публикация о главной странице DYOR.io и её возможностях выйдет уже в эту субботу. 🔥В честь этого мы запускаем небольшой интерактив для наших пользователей, в котором вам нужно будет предложить какую-нибудь интересную фичу, которую мы можем внедрить на главной странице нашего сайта, в один из наших чатов с хэштэгом #homepage DYOR.io Chat (EU) DYOR.io Чат (RU) 🎤 Мы будем принимать ваши предложения до 28 сентября этого года, после чего соберём их все, рассмотрим на предмет целесообразности и выберем из них три наиболее интересных и полезных. 💎 Их авторов мы наградим нашим DYOR coin: 🥇 За 1 место - 7 $DYOR 🥈 За 2 место - 5 $DYOR 🥉 За 3 место - 3 $DYOR ✏️ Дерзайте! Сайт • Чат • 𝕏 • Поддержка

Hashtags

1900的灯泡店💡

@justfuning1900 · Post #564 · 14.03.2025 г., 08:35

最近在设置Nas的Homepage页面,使用的项目是 https://gethomepage.dev/ ,选它的原因是颜值很不错,可定制性强,可且配套的API适配也很多,唯一的不足之处是没有配置Ui,需要手动写yaml文件。 在配置时发现还是有很多在用的服务没有做适配,但是homepage提供了custom api 的配置,可以使用接口返回的数据进行服务信息展示,在尝试了几次后发现可以让deepseek去写一些基于Cloudflare Worker的接口函数,可以十分高效的在你的homepage上集成服务信息。 #nas#docker#cloudflare#homepage

дрон

@brusentsof · Post #750 · 07.02.2025 г., 07:40

Начнем с рассмотра главной страницы сайта asb-video.ru Логотип компании, кнопка вызова по телефону, оператор в телеграме и кнопка меню расположились в верхней части экрана мобильного устройства. Далее нас встречает баннер, который в будущем может превратиться в слайдер акций, скидок или нового проекта. Ниже нас будут ждать типовые решения для дома, офиса, склада, магазина или квартиры, которые ООО «АСБ» может предложить для вашего видеонаблюдения. После типовых решений нас ждёт уникальное целевое действие. Интерактивным интерфейсом мы заинтересуем посетителей сайта воспользоваться калькулятором подсчёта сметы персональной системы видеонаблюдения. Для этого необходимо ввести два значения с помощью клавиатуры — количество помещений и общую площать вашего объекта. Я придумал систему просчёта количества необходимого оборудования для не сложной среднестатистической системы. По кнопке ниже калькулятора мы перейдём к просчитанной смете и сможем ознакомиться с составом автоматически подобранного решения. Внизу экрана мобильного устройства вы всегда сможете увидеть кнопки главной, каталога, калькулятора, контактов и кабинета технической поддержки. В следующем посте мы рассмотрим меню сайта. #asb#mobile#uxui#design#asbvideoru#homepage www.asb-video.ru

GitHub Trends

@githubtrending · Post #14784 · 04.06.2025 г., 00:00

#vue#awesome#dashboard#docker#hacktoberfest#homelab#homepage#mit#nodejs#organization#productivity#pwa#self_hosted#startpage#vue Dashy is a free, open-source dashboard that lets you organize and access all your self-hosted services, apps, and web links from one central place, making it easy to manage and monitor everything you use regularly[1][2][4]. It comes with over 50 pre-built widgets for things like system monitoring, news, weather, and productivity, and you can customize the look and layout with themes, icons, and different views[4][5]. The main benefit is that Dashy saves you time and hassle by giving you a single, user-friendly page to launch and check on all your important services, with features like instant search, status indicators, and multi-language support[4][5]. https://github.com/Lissy93/dashy