教程三 在Go中使用Energy创建跨平台应用 - 状态控制

这篇教程详细介绍了如何在Energy框架下控制CEF浏览器的状态,包括页面加载、前进、后退、刷新和暂停等功能。文章中展示了创建应用、设置CEF环境、配置应用以及创建主窗口的过程,并通过回调函数监听加载进度和页面状态变化,实现了UI组件如按钮和进度条的联动控制。

教程-示例-文档


本文介绍在Energy中如何像浏览器一样控制状态, 页面的加载、前进、后退、刷新、暂停刷新

前提-需要安装好开发环境参考: 教程一 环境安装

创建应用

  • 开发环境中 MacOSX平台必须在"GlobalCEFInit"之前设置CEF
  • 设置使用CEF 和 CEF框架目录,生成开发执行应用程序包
    • macapp.MacApp.IsCEF(common.IsDarwin())
  • 全局初始化 每个应用都必须调用的
    • cef.GlobalCEFInit(&libs, &resources)
  • 可选的应用配置
    • cfg := cef.NewApplicationConfig()
  • 指定chromium的二进制包框架根目录, 不指定为当前程序执行目录
    • 环境变量ENERGY_HOME="/app/cefframework" 配置框架所在目录

    if common.IsWindows() {
        //SetFrameworkDirPath 或 配置环境变量 ENERGY_HOME
        //cfg.SetFrameworkDirPath("D:\\app.exe\\energy\\chromium64")
    } else if common.IsLinux() {
        //cfg.SetFrameworkDirPath("/home/sxm/app/swt/energy/chromium")
    }

  • 创建应用
    • cef.NewApplication(cfg)
  • 主进程窗口初始化函数
    • src.MainBrowserWindow()

package main

import (
	"embed"
	"github.com/energye/energy/cef"
	"github.com/energye/energy/common"
	"github.com/energye/energy/example/browser-control/src"
	"github.com/energye/golcl/pkgs/macapp"
)

//go:embed resources
var resources embed.FS

//go:embed libs
var libs embed.FS

func main() {
	//开发环境中 MacOSX平台必须在"GlobalCEFInit"之前设置CEF
	//设置使用CEF 和 CEF框架目录,生成开发执行应用程序包
	macapp.MacApp.IsC
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yanghye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值