# API 函数
# create_window
create_window(title,
url='',
js_api=None,
width=800,
height=600,
resizable=True,
fullscreen=False,
min_size=(200, 100),
strings={},
confirm_quit=False,
background_color='#FFF',
debug=False,
text_select=False)
创建一个新的 pywebview 窗口。首次调用此函数时将启动应用程序并占用程序主线程。您必须在单独的线程中执行您的程序逻辑。后续调用 create_window 将返回一个唯一窗口 uid,该窗口可用于引用 API 函数中的特定窗口。单窗口应用程序无需理会 uid,在函数调用中可以直接忽略它。
title- 窗口标题url- 要加载的 URL。如果 URL 没有协议前缀,则将其解析为相对于应用程序入口点的路径。js_api- 将js_api类对象公开给当前 pywebview 窗口的 DOM 。JavaScript 可以通过window.pywebview.api对象来对js_api进行函数调用。回调函数可以接受一个参数的基本类型或对象。对象类型在 JavaScript 和 Python 间转换。函数在单独的非安全的线程中执行。width- 窗口宽度。默认值为800px。height- 窗口高度。默认值为600px。resizable- 窗口大小是否可以调整。默认为True。fullscreen- 窗口全屏模式, 默认值为False。frameless- 窗口无边框模式,默认值为False。min_size- 窗口最小尺寸,元组类型(width, height), 默认值为(200x100)。strings- 窗口本地化语言配置,字符串的字典类型。默认值在localization.py中定义。confirm_quit- 窗口退出时是否显示确认对话框,默认值为False。background_color- 窗口的 WebView 在 loaded 之前的背景颜色。指定为十六进制颜色。默认为white。debug- 启用调试模式,默认值为False。详情请参阅 调试 页面。text_select- 启用 WebView 的文档文本选择,默认值为False。如需单独指定元素的文本选择,可以使用 CSS 的 user-select 属性。
以下函数必须在创建 pywebview 窗口后才可以调用,否则将抛出异常。
在所有情况下,uid 是 函数 create_window() 返回的目标窗口的 uid; 如果给定的窗口不存在,uid 则抛出异常。默认值是 'master',这是第一个窗口的特殊 uid。
# 示例
# create_file_dialog
create_file_dialog(dialog_type=OPEN_DIALOG,
directory='',
allow_multiple=False,
save_filename='',
file_types=())
创建一个打开文件 (webview.OPEN_DIALOG), 打开文件夹 (webview.FOLDER_DIALOG) 或保存文件(webview.SAVE_DIALOG) 的对话框。
返回值为所选文件的元组类型数据,如果取消则返回值为 None。
allow_multiple=True- 允许多选directory- 初始目录save_filename- 保存文件对话框的默认文件名file_types- 打开文件对话框中支持的文件类型字符串元组,文件类型字符串必须遵循此格式"可选指定文件描述 (*.ext1;*.ext2...)",默认值为"All files (*.*)",可以在本地化字典中更改'All files'字符串值。
如果未指定 file_types 参数则使用默认值 "All files (*.*)"。可以在本地化字典中更改“所有文件”字符串。
# 示例
# destroy_window
destroy_window(uid='master')
销毁指定的 WebView 窗口。
# evaluate_js
evaluate_js(script, uid='master')
script- JavaScript 代码
在指定的窗口中执行 JavaScript 代码。返回最后一个计算表达式。JavaScript 类型将会转换为 Python类型,例如。JS 对象 objects 转为 字典 dicts,JS 数组 Array 转为 列表 List,JS 未定义 undefined 转为 None。请注意,由于实施限制,字符串 'null' 将被转为 None。如果 JavaScript 代码中存在诸如 \n、\r 和 \n 等转义字符必须事先处理,否则他们会被 Python 解析。 我们推荐使用r'strings' 来加载 JavaScript。
# get_current_url
get_current_url(uid='master')
返回指定窗口中的当前 URL。如果没有加载 url,则返回 None。
# load_css
load_css(css, uid='master')
将 CSS 作为字符串加载到指定的窗口中。
# load_html
load_html(content, base_uri=base_uri(), uid='master')
content- HTML 代码base_uri- 相对资源地址,设置为启动程序的目录,用于解析相对 URL 的基本 URL 设置为启动程序的目录。
将 HTML 代码加载到指定的窗口中。请注意,以此种方式加载 HTML 时,将无法使用 hash 锚点。
# load_url
load_url(url, uid='master')
将新的 URL 加载到指定的 pywebview 窗口中。
# set_title
set_title(title, uid='master')
更改窗口的标题
# toggle_fullscreen
togle_fullscree(uid='master')
切换窗口的全屏模式。
# window_exists
window_exists(uid='master')
判断指定 uid 的 pywebview 窗口是否已启动并正在执行,是则返回 True,否则返回 False。
# config
config.gui = 'qt' | 'gtk'
配置项,强制使用指定的 GUI 库, GTK 或 QT。可以通过环境变量 PYWEBVIEW_GUI 实现相同的效果