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

TGINSIGHT SIMILAR POSTS

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

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

Регулярно приходится писать и ревьюить код, где используется PySide2-6. Заметил, что в подавляющем большинстве случаев настройка создаваемых базовых виджетов происходит через методы. Думаю, всем знаком такой способ. Простой пример с кнопкой: button = QPushButton("Click Me") button.setMinimumWidth(300) button.setFlat(True) button.setStyleSheet("font-size: 20pt") button.setToolTip("Super Button") button.clicked.connect(lambda: print("Button clicked")) Но есть и альтернативный способ - настройка через свойства. Это просто ключевые аргументы конструктора класса. Хоть они и не указаны в документации как аргументы, но они есть) Этот код делает тоже самое но с помощью Property button = QPushButton( "Click Me", minimumWidth=300, flat=True, styleSheet="font-size: 20pt", toolTip="Super Button", clicked=lambda: print("Button clicked"), ) Где это может быть полезно ▫️ Это выглядит более аккуратно и коротко, уже повод использовать ▫️ Может использоваться в заполнении лейаута, когда нам не нужно никакое другое взаимодействие с виджетом и поэтому сохранять его в переменную не требуется. Например, лейбл или кнопка. widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) layout.addWidget(QLabel("Button >", alignment=Qt.AlignRight)) layout.addWidget(QPushButton("Click Me", clicked=lambda: print("Button clicked"))) widget.show() Либо так widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) for wd in ( QLabel("Button >", alignment=Qt.AlignRight), QPushButton("Click Me", clicked=lambda: ...) ): layout.addWidget(wd) widget.show() ▫️ Можно хранить настройки в каком-то конфиге или генерировать на лету, после чего передавать как kwargs. kwargs = {"text": "Hello " * 30, "wordWrap": True} my_label = QLabel(**kwargs) Как получить полный список доступных свойств? Эта функция распечатает в терминал все свойства виджета и их текущие значения def print_widget_properties(widget): meta_object = widget.metaObject() for i in range(meta_object.propertyCount()): property_ = meta_object.property(i) property_name = property_.name() property_value = property_.read(widget) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

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

Пребарај: #visio

当前筛选 #visio清除筛选
科技&趣闻&杂记

@kejiqu · Post #3581 · 20.06.2025 г., 02:47

开源办公套件 ONLYOFFICE 9.0 发布:优化界面、整合 AI 技能、支持 Markdown ONLYOFFICE 9.0版本已发布,该开源办公套件在界面优化基础上,新增了对Visio、Markdown等格式文件的直接查看支持,并引入AI技术以提升效率。新版本优化了PDF、Document、Spreadsheet和Presentation编辑器的界面布局,并提供“现代浅色”和“现代深色”主题选项。新增的“图表查看器”功能允许用户直接打开Visio(.vsdx)和OpenDocument Graphic(.odg)等格式文件,同时增加了对Markdown(.md)和Excel二进制工作簿(.xlsb)等格式的支持。在AI方面,ONLYOFFICE 9.0实现了宏自动化,能够通过AI转换宏或VBA脚本,并快速识别扫描PDF文档中的文字。此外,PDF编辑器新增实时协作表单功能,Spreadsheet支持从外部数据源直接导入信息。IT之家 | ONLYOFFICE 🏷#ONLYOFFICE#AI#Visio 📢频道👥群组📝投稿