教程四 在Go中使用Energy创建跨平台GUI - 开发者工具

news2025/7/10 20:01:15

介绍

本文介绍在Energy中如何使用开发者工具(dev tools)

开发者工具(dev tools) 是前端开发人员常用的,在开发时调式代码、接口、资源加载、CSS调整等等,大多数场景都会使用。

energy封装了部分繁琐的chromium使用,其中之一包含开发者工具,你也可以自己自定义一些chromium功能。

启用方式

一、右键菜单和F12

  • 创建 cef.NewChromiumConfig() 配置对象
    • 启用右键菜单 SetEnableMenu(true)
    • 启用开发者工具 SetEnableDevTools(true)
    • 使用 cef.BrowserWindow.Config.SetChromiumConfig(config) 将配置对象设置到主窗口对象中

开发者工具默认需要启用右键菜单才能开启

设置启用开发者工具之后默认会启用F12快捷键方式

package main

import (
	"github.com/energye/energy/cef"
)

func main() {
	//全局初始化 每个应用都必须调用的
	cef.GlobalCEFInit(nil, nil)
	//创建应用
	cefApp := cef.NewApplication(nil)
	//主窗口的配置
	//指定一个URL地址,或本地html文件目录
	cef.BrowserWindow.Config.DefaultUrl = "https://energy.yanghy.cn"
	//chromium 配置
	config := cef.NewChromiumConfig()
	config.SetEnableMenu(true)     //启用右键菜单
	config.SetEnableDevTools(true) //启用开发者工具
	cef.BrowserWindow.Config.SetChromiumConfig(config)
	//运行应用
	cef.Run(cefApp)
}

效果图一

二、远程端口

  • 创建 cef.NewApplicationConfig() 对象

    • 设置并启用远程调式端口号 applicationConfig.SetRemoteDebuggingPort(8888) 

该方式将会监听8888自定义端口号的ws监听

在远程或本地浏览器打开 http://127.0.0.1:8888/ 地址,展示需要调式的URL列表

package main

import (
	"github.com/energye/energy/cef"
)

func main() {
	//全局初始化 每个应用都必须调用的
	cef.GlobalCEFInit(nil, nil)
	applicationConfig := cef.NewApplicationConfig()
	applicationConfig.SetRemoteDebuggingPort(8888) //开发者工具远程端口方式, 需自定义端口号
	//创建应用
	cefApp := cef.NewApplication(applicationConfig)
	//主窗口的配置
	//指定一个URL地址,或本地html文件目录
	cef.BrowserWindow.Config.DefaultUrl = "https://www.csdn.net"
	//chromium 配置
	config := cef.NewChromiumConfig()
	//config.SetEnableMenu(true)     //启用右键菜单
	//config.SetEnableDevTools(true) //启用开发者工具
	cef.BrowserWindow.Config.SetChromiumConfig(config)
	//运行应用
	cef.Run(cefApp)
}

效果图二

1. 运行程序

2. 浏览器打开地址 http://127.0.0.1:8888/

3. 点击调式的地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/36823.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

致敬最美抗击疫情的逆行者 DIV布局大学生抗疫感动专题网页设计作业模板 疫情感动人物静态HTML网页模板下载

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

PD仿真算法中变形梯度矩阵的极分解

1.背景 PD(Projective Dynamics)仿真算法是一种“可并行化计算的”高效的软体形变模拟(或成为仿真、动画)算法,与传统的基于力的有限元方法不同的是,PD算法直接作用于顶点位置,通过最小化能量函…

Wireshark Lab: Ethernet and ARP v7.0

Wireshark Lab: Ethernet and ARP v7.0 实验内容戳这里 介绍部分转自乌漆WhiteMoon Ethernet 以太网 以太网在现在的有线局域网中有着支配者的地位,就像是因特网使得全球互联那样。其实局域网技术还有令牌环、FDDI 和 ATM 等,但是以太网仍然具有很多…

第十三届蓝桥杯 C++ B 组省赛 G 题———积木画(AC)

目录1.积木画1.题目描述2.输入格式3.输出格式4.样例输入5.样例输出6.样例说明7.数据范围8.原题链接2.解题思路AC_code1.积木画 1.题目描述 小明最近迷上了积木画, 有这么两种类型的积木, 分别为 III 型(大小为 2 个单位面积) 和 LLL 型 (大小为 3 个单位面积): 同…

java面试强基(12)

什么是泛型?有什么作用? Java 泛型(Generics) 是 JDK 5 中引入的一个新特性。使用泛型参数,可以增强代码的可读性以及稳定性。 编译器可以对泛型参数进行检测,并且通过泛型参数可以指定传入的对象类型。…

多媒体技术论文研读报告

多媒体技术论文研读报告 一、论文基本信息 论文题目为:基于多模态特征融合嵌入的相似广告检索方法,作者信息:南京大学计算机软件新技术国家重点实验室,南京大学软件学院冯奕、周晓松、李传艺、葛季栋、骆斌,深圳市腾…

2022最新JUC+多线程面试题

Java中实现多线程有几种方法 创建线程的常用的几种方式: 继承Thread类 实现Runnable接口 (重写run方法,无返回值) 实现Callable接口( JDK1.5>,重写call方法,可以自定义返回值 ) 线程池方…

带式输送机的传动装置设计

目 录 摘 要 I Abstract II 1 绪论 1 1.1设计概述 1 1.2研究内容及参数 1 1.3 带传动 2 1.4圆锥-圆柱齿轮传动减速器 2 2结构设计 4 2.1V带传动 4 2.2减速器内部的传动零件 4 2.3联轴器的选择 4 3 设计计算过程及说明 6 3.1选择电动机 6 3.1.1电动机类型和结构型式选择 6 3.1.2…

android源码-ContentProvider实现原理分析

前言: 最初的目的是想研究下ContentProvider产生ANR原因的,但是如果要讲ANR的原因,那么必须要了解ContentProvider的完整实现原理,所以本篇就先讲一下ContentProvider的实现原理,下一篇再去讲ANR的原因。 本篇主要会讲…

估值破千亿,被资本疯抢的广汽埃安会是广汽的未来吗?

最近,广汽埃安在新能源市场上捷报频传,先是宣布完成了182.94亿元的A轮融资,成近年国内新能源整车最大的单笔私募融资。品牌估值更是达到了震撼人心的1032.39亿,基本等于广汽集团AH总市值,也远超港股小鹏、零跑汽车的市…

就两秒?这说出去谁信啊!

文 | xiaoyi(转载请后台联系)关注公众号:小一的学习笔记截止发文,北上广深一共有6510条公交线路为了获取上面的这些线路信息,我写了一个爬虫,大概用了2秒左右就搞定,真爽!说出来你们…

Maven环境搭建

目录一、安装及环境配置1.1、下载1.2、Maven目录结构介绍1.3、环境配置二、关于Maven仓库的说明2.1、仓库基本分类(私服仓库和中央仓库均为远程仓库)2.2、本地仓库的默认位置(在setting.xml中配置)2.3、中央仓库连接位置的体现&am…

K8S部署后的使用:dashboard启动、使用+docker镜像拉取、容器部署(ubuntu环境+gpu3080+3主机+部署深度学习模型)

0、k8s安装、docker安装 参考:前两步Ubuntu云原生环境安装,dockerk8skubeedge(亲测好用)_爱吃关东煮的博客-CSDN博客_ubantu部署kubeedge 配置节点gpu: K8S调用GPU资源配置指南_思影影思的博客-CSDN博客_k8s 使用gpu…

机器学习-(手推)线性回归1-最小二乘法(矩阵表达)、几何意义

一、最小二乘法(矩阵表达)误差平均分散每个样本 如下数学推到过程(手推!!!): 数据介绍: D{(x1,y1),(x2,y2),......(xn,yn), Xi(P维列向量&…

留学Essay写作主要靠哪些步骤得分?

期末来了,留学生该怎么办?如何做Essay?下面我们介绍提高写作能力的有效技巧! What should international students do when the end of the semester comes?How to do Essay?Here we introduce effective skills to improve your writing …

[附源码]SSM计算机毕业设计农贸产品交易系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

SSM框架-从JDBC到Mybatis,你今天CRUD了吗?

1 Jdbc 1.1 jdbc入门使用 导入驱动jar包 新建一个目录lib,把jar包放进去 add as library 具体代码 public class JDBCdEMO {public static void main(String[] args) throws Exception{//1.注册驱动Class.forName("com.mysql.jdbc.Driver");//2.获取连…

vue2 - 基于Export2Excel.js导出Excel案例(js-xlsx插件二次封装使用)

目录一、项目场景二、实现思路三、准备工作1、下载js-xlsx2、下载Export2Excel.js3、下载file-saver和script-loader4、下载mock四、代码实现1、mock数据2、使用Export2Excel.js导入导出excel数据3、App.vue代码五、运行结果六、进阶(复杂表头的导出)一、…

让我们拥抱DataV,感受数据可视化的魅力

最近领导给安排了一个工作,做原型设计。看了37万字的项目需求文档,发现客户对数据可视化要求很高。为什么用户对可视化要求这高呢?可以说,可视化也是这两年的热点了,大数据,可视化,数字孪生频繁…

[HFCTF2020]EasyLogin

有注册登录,先注册一个账号然后登录进去 在登录页面的源代码发现 访问得到 /*** 或许该用 koa-static 来处理静态文件* 路径该怎么配置?不管了先填个根目录XD*/function login() {const username $("#username").val();const password $(…