跳到主要内容

快速开始

本指南将帮助您快速了解如何使用 JadeView 易语言 SDK 创建第一个 WebView 应用程序。

环境要求

  • 操作系统:Windows 7 及以上版本
  • 易语言版本:易语言 5.3 及以上

SDK 导入步骤

  1. 下载 SDK:从以下渠道下载最新版本的 JadeView 易语言 SDK 源码和示例:
  2. 解压文件:将下载的 SDK 压缩包解压到合适的目录
  3. 导入模块
    • 打开易语言 IDE
    • 新建或打开一个易语言项目
    • 点击菜单栏的「工具」→「支持库配置」
    • 点击「全选」按钮,然后点击「确定」
    • 点击菜单栏的「插入」→「模块引用表」
    • 点击「添加模块引用」按钮
    • 浏览到 SDK 解压目录,选择需要的易语言模块文件
    • 点击「打开」按钮,完成模块导入

简单示例代码

下面是一个简单的示例代码,演示如何使用 JadeView 易语言 SDK 创建一个 WebView 窗口:

.版本 2
.支持库 spec

.程序集 程序集1
.程序集变量 窗口设置, JadeView窗口设置
.程序集变量 JadeView实例, JadeView

.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 开启DevTools, 逻辑型

开启DevTools = 假

' 初始化 JadeView 运行时(异步)
JadeView实例.初始化(开启DevTools, 取运行目录() + "\log.txt", 取运行目录())

' 注册程序事件,监听初始化完成
JadeView实例.注册程序事件("app-ready", &JadeView准备就绪)

' 运行消息循环
JadeView实例.消息循环()

返回 (0) ' 可以根据您的需要返回任意数值

.子程序 JadeView准备就绪
.参数 成功否, 逻辑型
.参数 err, 文本型

.如果 (成功否)
' 初始化窗口设置
窗口设置.标题 = "我的第一个 JadeView 应用"
窗口设置.宽度 = 800
窗口设置.高度 = 600
窗口设置.窗口主题 = #主题_亮色
窗口设置.最大化按钮 = 真
窗口设置.最小化按钮 = 真
窗口设置.可调整大小边框 = 真

' 初始化视窗设置
.局部变量 视窗设置, JadeView视窗设置
视窗设置.自动播放媒体 = 假
视窗设置.禁用右键菜单 = 假

' 创建 WebView 窗口
.局部变量 窗口ID, 整数型
窗口ID = JadeView实例.创建窗口("https://www.example.com", , 窗口设置, 视窗设置)

.如果真 (窗口ID > 0)
调试输出 ("WebView 窗口创建成功,窗口ID:" + 到文本 (窗口ID))
.如果真结束
.否则
调试输出 ("JadeView 初始化失败!" + err)
.如果结束

.子程序 订阅IPC消息

' 注册前端事件
JadeView实例.ipc_订阅("setTheme", &ipc_设置主题)
JadeView实例.ipc_订阅("message", &ipc_对话消息)

.子程序 ipc_设置主题
' 实现主题设置逻辑

.子程序 ipc_对话消息
' 实现消息处理逻辑

代码说明

  1. 程序集变量声明:声明了 窗口设置JadeView实例 程序集变量,用于全局访问
  2. _启动子程序:程序入口函数
    • 初始化 JadeView 运行时(异步)
    • 注册程序事件,监听初始化完成事件
    • 启动消息循环,处理窗口事件
  3. JadeView准备就绪:初始化完成后的回调函数
    • 检查初始化是否成功
    • 成功则配置窗口设置和视窗设置
    • 调用 创建窗口 方法创建 WebView 窗口
    • 输出窗口创建结果
    • 失败则输出错误信息
  4. 订阅IPC消息:注册前端事件,处理来自前端的消息
  5. ipc_设置主题:处理来自前端的主题设置请求
  6. ipc_对话消息:处理来自前端的对话消息

关键注意事项

  • JadeView 初始化是异步的,通过事件回调处理初始化完成
  • 创建窗口也是异步的,会先返回窗口ID,实际窗口稍后创建完成
  • 必须调用 消息循环 方法启动消息处理
  • 采用事件驱动的方式处理各种事件

这个示例代码展示了 JadeView 易语言 SDK 的基本使用流程,包括初始化、事件订阅、窗口创建等核心功能。您可以根据自己的需求修改和扩展这个示例。

运行结果

运行上述代码后,您将看到一个新的窗口,标题为 "我的第一个 JadeView 应用",窗口大小为 800x600 像素,显示 https://www.example.com 网页内容。

单独公开方法

除了 JadeView 类方法外,易语言 SDK 还提供了一些单独的公开方法,这些方法可以直接调用,无需通过 JadeView 类实例。

主要单独公开方法

  1. JadeView消息循环:执行并保持主进程生命周期,必须在初始化后调用,用于处理窗口事件和IPC消息
  2. JadeView创建本地服务:创建一个本地HTTP服务器,用于提供本地文件服务
  3. GBK文本到UTF8文本:将GBK编码的文本转换为UTF-8编码的文本,用于与JavaScript交互
  4. UTF8文本到GBK文本:将UTF-8编码的文本转换为GBK编码的文本,用于处理从JavaScript接收的文本数据

示例代码

.局部变量 开启DevTools, 逻辑型

' 根据是否为调试版决定是否开启开发者工具
开启DevTools = 是否为调试版()

' 整个初始化都是异步的
JadeView.初始化(开启DevTools, GBK文本到UTF8文本(取运行目录()) + "\log.txt", 取运行目录())

' 订阅IPC消息
订阅IPC消息()

' 在异步中,千万不要等待返回后执行任何创建窗口操作
JadeView消息循环()

返回 (0) ' 可以根据您的需要返回任意数值

常见问题

1. 为什么编译时提示找不到 "JadeView窗口设置" 类型?

请确保您已经正确导入了 JadeView 易语言 SDK 模块,并且模块中包含了这些数据类型的定义。

2. 为什么运行时提示找不到 DLL 文件?

请确保 JadeView.dll 文件与您的易语言程序位于同一目录下,或者已经添加到系统 PATH 环境变量中。

3. 为什么窗口没有显示?

请检查您的代码中是否正确调用了 create_webview_window 函数,并且返回的窗口ID大于0。您可以使用 调试输出 函数查看具体的错误信息。

下一步

  • 学习 常量 参考,了解 SDK 中定义的所有常量
  • 学习 数据类型 参考,了解 SDK 中定义的所有数据类型
  • 学习 JadeView 类方法 参考,了解 SDK 中定义的所有类方法
  • 学习 单独公开方法 参考,了解 SDK 中定义的所有单独公开方法
  • 尝试修改示例代码,使用不同的窗口设置和视窗设置
  • 探索如何实现 JavaScript 与易语言的交互

现在您已经成功创建了第一个 JadeView 易语言 SDK 应用程序,继续探索 SDK 的更多功能吧!