介绍
Python SDK2 是 JadeView 2.0 的 Python 绑定库,基于 ctypes 封装 JadeView DLL,让您可以使用 Python 快速构建基于 WebView2 的 Windows 桌面应用程序。
SDK 的 API 命名风格与 JadeView 前端 JS API 保持一致,降低跨语言使用的学习成本。
核心特性
- 窗口管理:创建标准/无边框 WebView 窗口,控制窗口大小、位置、全屏、置顶等
- IPC 通信:事件订阅(on/off)、IPC 通道处理器(register_ipc_handler)、主动推送消息(send_ipc_message)
- 对话框:打开/保存文件对话框、消息框、错误框,支持同步与异步两种模式
- 系统托盘:创建托盘图标,设置右键菜单、提示文字、图标
- 系统通知:Windows 原生通知,支持按钮和自定义动作
- WebView 操作:导航、重载、执行 JavaScript、缩放、防截屏
- 工具函数:版本信息、系统路径、显示器信息、YAML 配置存储、全局热键、URL Scheme 注册、文件关联
- 自动适配:根据 Python 位数自动加载 x64/x86 DLL
适用场景
- 使用 Python 开发 Windows 桌面应用(前端用 HTML/CSS/JS,后端用 Python)
- 需要 WebView2 渲染能力的工具类/效率类应用
- 快速原型开发和内部工具
技术架构
┌─────────────────────────────────────────┐
│ Python 后端 │
│ ┌─────────┐ ┌──────────┐ ┌────────┐ │
│ │ window │ │ ipc │ │ dialog │ │
│ │ webview │ │ events │ │ tray │ │
│ │ tools │ │ │ │ notify │ │
│ └─────────┘ └──────────┘ └────────┘ │
└─────────────────┬───────────────────────┘
│ ctypes / WinDLL
┌─────────────────┴───────────────────────┐
│ JadeView DLL (x64 / x86) │
└─────────────────┬───────────────────────┘
│
┌─────────────────┴───────────────────────┐
│ WebView2 / 系统 WebView │
│ ┌───────────────────────────────────┐ │
│ │ HTML / CSS / JavaScript │ │
│ │ (前端 UI) │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────┘
系统要求
- Python 版本:Python 3.11+
- 操作系统:Windows 10 / Windows 11
- 运行时:WebView2 Runtime(Windows 11 已内置,Windows 10 需单独安装)
- 依赖管理:推荐使用 uv
- 外部依赖:无(仅使用 Python 标准库)
安装方式
# 使用 uv(推荐)
uv add jadeview
# 或使用 pip
pip install jadeview
快速示例
import jadeview
from jadeview import events
def on_ready(window_id, data):
jadeview.window.create_webview_window(
"https://example.com",
title="Hello JadeView",
width=1024,
height=768,
)
def on_all_closed(window_id, data):
jadeview.cleanup()
jadeview.ipc.on(events.APP_READY, on_ready)
jadeview.ipc.on(events.WINDOW_ALL_CLOSED, on_all_closed)
jadeview.init("MyApp", "myapp1")
jadeview.run()
项目信息
- 版本:2.0.0
- 许可证:遵循 JadeView 项目许可证
- 源码:GitHub