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

Резултати

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

Пребарај: #webhook

当前筛选 #webhook清除筛选
djangoproject

@djangoproject · Post #121 · 25.08.2016 г., 04:39

https://gist.github.com/leandrotoledo/4e9362acdc5db33ae16c # This file is an annotated example of a #webhook based #bot for #telegram. It does not do anything useful, other than provide a quick # template for whipping up a testbot. Basically, fill in the CONFIG # section and run it. # Dependencies (use pip to install them): # - python-telegram-bot: https://github.com/leandrotoledo/python-telegram-bot # - Flask : http://flask.pocoo.org/ # Self-signed SSL certificate (make sure 'Common Name' matches your FQDN): # $ openssl req -new -x509 -nodes -newkey rsa:1024 -keyout server.key -out server.crt -days 3650 # You can test SSL handshake running this script and trying to connect using wget: # $ wget -O /dev/null https://$HOST:$PORT/

探索号

@seeker_rc · Post #19936 · 08.05.2026 г., 02:25

开发了个简单的 ping-pong+监控的小软件 软件有三个功能: 1. 启动时会访问设置好的 webhook (目的:在系统启动成功或母机意外重启时给自己发一条通知,能及时知道) 2. 启动一个 ping-pong http 服务,默认端口 10101 (目的:可以让另外一台主机检测本机是否运行正常) 3. 可以监控一个或多个设定的 url (一个简单的定检测功能,可以监控给定的 url 是否正常运行,如果访问失败,会请求前面设定的 webhook ,并支持修改参数) github: <https://github.com/yafoo/ping-pong> 如果你有这方面需求可以试试。 ... via V2EX 分享创造 标签: #ping#pong#webhook ⚡️探索号频道 ⚡️探索者频道 ⚡️探索者交流群 ⚡️ Youtube 频道:科技探索者 每天推荐有趣内容,欢迎订阅、转发。

djangoproject

@djangoproject · Post #122 · 25.08.2016 г., 04:45

https://github.com/python-telegram-bot/python-telegram-bot/wiki/Webhooks#heroku On #Heroku using #webhook can be beneficial on the free-plan because it will automatically manage the downtime required. The reverse proxy is set up for you and an environment is created. From this environment you will have to extract the port the #bot is supposed to listen on. Heroku manages the #SSL on the #proxy side, so you don't have provide the certificate yourself.