Skip to content

pyguiadapter.adapter.adapter

GUIAdapter

Bases: object

GUI适配器类,负责管理函数和启动GUI应用。

__init__(*, hdpi_mode: bool = True, global_stylesheet: Union[str, Callable[[], str], None] = None, on_app_start: Optional[Callable[[QApplication], None]] = None, on_app_shutdown: Optional[Callable] = None)

GUIAdapter构造函数。用于创建GUIAdapter实例。

Parameters:

Name Type Description Default
hdpi_mode bool

启用高DPI模式。某些Qt版本上,该参数不生效。

True
global_stylesheet Union[str, Callable[[], str], None]

应用全局样式。可以为样式表字符串,也可以为一个返回全局样式表字符串的函数。

None
on_app_start Optional[Callable[[QApplication], None]]

应用启动回调函数。在应用启动时调用。

None
on_app_shutdown Optional[Callable]

应用停止回调函数。在应用停止时调用。

None

Examples:

from pyguiadapter.adapter import GUIAdapter

def foo(a: int, b: int, c: str):
    pass

adapter = GUIAdapter()
adapter.add(foo)
adapter.run()

add(fn: Callable, display_name: Optional[str] = None, group: Optional[str] = None, icon: IconType = None, document: Optional[str] = None, document_format: Literal['markdown', 'html', 'plaintext'] = 'markdown', cancelable: bool = False, *, widget_configs: Optional[Dict[str, Union[BaseParameterWidgetConfig, dict]]] = None, window_config: Optional[FnExecuteWindowConfig] = None, window_listener: Optional[BaseWindowEventListener] = None, window_toolbar: Optional[ToolBar] = None, window_menus: Optional[List[Union[Menu, Separator]]] = None) -> None

添加一个函数。

Parameters:

Name Type Description Default
fn Callable

待添加的函数。

required
display_name Optional[str]

函数的显示名称。如果不指定,则使用函数的名称。

None
group Optional[str]

函数所属的分组。如果不指定,则将函数添加到默认分组。

None
icon IconType

函数的图标。可以为文件路径,也可使用QtAwesome支持的图标名称。

None
document Optional[str]

函数的说明文档。若不指定,则尝试提取函数的docstring作为文档。

None
document_format Literal['markdown', 'html', 'plaintext']

函数说明文档的格式。可以为"markdown"、"html"或"plaintext"。

'markdown'
cancelable bool

函数是否可取消。

False
widget_configs Optional[Dict[str, Union[BaseParameterWidgetConfig, dict]]]

函数参数控件配置。键为参数名,值为参数控件配置。

None
window_config Optional[FnExecuteWindowConfig]

窗口配置。

None
window_listener Optional[BaseWindowEventListener]

窗口事件监听器。

None
window_toolbar Optional[ToolBar]

窗口的工具栏。

None
window_menus Optional[List[Union[Menu, Separator]]]

窗口菜单列表。

None

Returns:

Type Description
None

无返回值

exists(fn: Callable) -> bool

判断函数是否已添加。

Parameters:

Name Type Description Default
fn Callable

目标函数

required

Returns:

Type Description
bool

函数是否已添加

remove(fn: Callable) -> None

移除一个已添加的函数。

Parameters:

Name Type Description Default
fn Callable

待移除的函数。

required

Returns:

Type Description
None

无返回值

run(argv: Optional[Sequence[str]] = None, *, show_select_window: bool = False, select_window_config: Optional[FnSelectWindowConfig] = None, select_window_listener: Optional[BaseWindowEventListener] = None, select_window_toolbar: Optional[ToolBar] = None, select_window_menus: Optional[List[Union[Menu, Separator]]] = None) -> None

启动GUI应用。

Parameters:

Name Type Description Default
argv Optional[Sequence[str]]

传递给QApplication的命令行参数。

None
show_select_window bool

是否强制显示函数选择窗口,当添加的函数数量大于1时,默认显示。

False
select_window_config Optional[FnSelectWindowConfig]

函数选择窗口配置。

None
select_window_listener Optional[BaseWindowEventListener]

函数选择窗口事件监听器。

None
select_window_toolbar Optional[ToolBar]

函数选择窗口的工具栏。

None
select_window_menus Optional[List[Union[Menu, Separator]]]

函数选择窗口菜单列表。

None

Returns:

Type Description
None

无返回值