golang lorca 使用心得二

Go-Lorca使用GoHTML5构建跨平台的现代桌面应用程序 一个非常小的库,用于在Go中构建现代HTML5桌面应用程序。 它使用Chrome浏览器作为UI层。 与Electron不同,它不会将Chrome捆绑到应用程序包中,而是重用已安装的那个。 Lorca建立了与浏览器窗口的连接,允许从UI调用Go代码并以无缝方式从Go操作UI。 立即下载

一. 概要

lorca 进一步使用,lorca 窗口默认左上角展示,看着不舒服,想要在窗口布局中,于是想要使用 golang 辅助它屏幕居中展示,下面附带小栗子

package main

import (
	"log"
	"syscall"

	"github.com/zserge/lorca"
)

var (
	user32           = syscall.NewLazyDLL("User32.dll")
	getSystemMetrics = user32.NewProc("GetSystemMetrics")
)

func GetSystemMetrics(nIndex int) int {
	index := uintptr(nIndex)
	ret, _, _ := getSystemMetrics.Call(index)
	return int(ret)
}

const (
	SM_CXSCREEN = 0
	SM_CYSCREEN = 1
)

func main() {
	X := GetSystemMetrics(SM_CXSCREEN)
	Y := GetSystemMetrics(SM_CYSCREEN)
	pos_x := X/2 - 800/2
	pos_y := Y/2 - 600/2
	ui, err := lorca.New("http://www.baidu.com", "", 0, 0)
	ui.SetBounds(lorca.Bounds{Left: pos_x, Top: pos_y, Width: 800, Height: 600})
	if err != nil {
		log.Fatal(err)
	}
	ui.Eval(`
		//alert('1');
	`)
	defer ui.Close()
	<-ui.Done()
}

二. 感觉别扭点

lorca 底层调用谷歌浏览器,看着有点别扭,太像了,目前一个问题,登录后展示了谷歌老套的提示。

想了想,各种尝试,不知道咋不然它提示这个框,lorca 每次都是无痕模式打开谷歌浏览器。继续尝试中,如果各位有解决过这个问题的,可以告知下,感谢。 

lorca:在Go + HTML5中构建跨平台的现代桌面应用程序 洛尔卡 一个很小的库,用于在Go中构建现代HTML5桌面应用程序。 它使用Chrome浏览器作为UI层。 与Electron不同,它不会将Chrome捆绑到应用程序包中,而是重用已经安装的应用程序。 Lorca建立与浏览器窗口的连接,并允许从UI调用Go代码和以无缝方式从Go操作UI。 特征 具有非常简单的API的Pure Go库(无cgo) 小应用程序大小(通常5-10MB) 两全其美-HTML / CSS的全部功能使您的UI看起来不错,结合Go性能和易于开发 公开Go函数/方法并从JavaScript调用它们 从Go调用任意JavaScript代码 UI和主应用之间两种语言(异步/等待和Goroutines)之间的异步流 支持从本地Web服务器或通过数据URL加载Web UI 支持将所有资产嵌入单个二进制文件 支持在无头模式下使用UI测试您的应用 支持多个应用程序窗口 支持包 立即下载

相关推荐

在Go + HTML5中构建跨平台的现代桌面应用程序-Golang开发

Lorca一个很小的库,用于在Go中构建现代HTML5桌面应用程序。 它使用Chrome浏览器作为UI层。 与Electron不同,它没有将Chrome捆绑到应用程序包中,而是重用了已经存在于Lorca中的Lorca一个非常小的库,可以在Go中构建现代HTML5桌面应用程序。 它使用Chrome浏览器作为UI层。 与Electron不同,它不会将Chrome捆绑到应用程序包中,而是重用已安装的应用程序。 Lorca建立与浏览器窗口的连接,并允许从UI调用Go代码和以无缝方式从Go操纵UI。 具有非常简单的API的Pure Go库(无cgo),应用程序小(通常5-10MB),两全其美-t

html golang 桌面,Lorca:使用Go + HTML5构建跨平台的现代桌面应用程序

Lorca A very small library to build modern HTML5 desktop apps in Go. It uses Chrome browser as a UI layer. Unlike Electron it doesn't bundle Chrome into the app package, but rather reuses the one t...

weixin_39746652的博客 2232

Go桌面应用开发:Walk与Lorca的跨平台方案对比.pdf

文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 编译闪电般迅速,并发性能卓越,部署轻松简单!Go 语言以极简设计理念和出色工程性能,成为云原生时代的首选编程语言。从 Docker 到 Kubernetes,全球顶尖科技企业都在采用 Go。点击了解 Go 语言的核心优势、实战窍门和未来走向,开启高效编程的全新体验!

【Go|第5期】Lorca无法正常运行的解决方案

Lorca是一个用于构建跨平台桌面应用程序的开源库,专为Go语言设计。它使用了Chromium浏览器作为应用程序的UI层,以及Go语言作为后端处理逻辑的编程语言。然而这么一个优秀而又轻量级的UI库却在今年Chrome更新后无法使用,着实令人头大。

Commas的博客 911

004.PADS VX2.4常用快捷键及无模命令

PADS系列文章

qq_36492361的博客 4962

从仿真到实践:两级直接耦合放大电路的静态工作点协同调试指南

本文详细解析了两级直接耦合放大电路的静态工作点协同调试方法,从仿真到实践提供系统指南。重点介绍了Rc2电阻调整技巧、集电极电位测量方法及常见问题排查,帮助工程师解决各级静态工作点相互影响的难题,提升模拟电路设计效率。

weixin_29189373的博客 124

【Go|第8期】Lorca读取HTML的三种方式

Lorca是一个用于构建跨平台桌面应用程序的Go语言库,它提供了将Web界面嵌入到Go应用程序中的功能。接下来我们来了解下使用Lorca库读取HTML的三种方式吧 ^ - ^

Commas的博客 693

Mind+掌控板实战:5分钟搞定Easy IoT的MQTT通讯(附完整代码)

本文详细介绍了如何利用掌控板和Mind+图形化编程软件,快速实现基于Easy IoT平台的MQTT通讯。通过清晰的步骤讲解和完整的代码示例,指导用户完成从云端配置、Wi-Fi连接到MQTT消息发布与订阅的全过程,帮助初学者轻松构建物联网设备间的双向对话系统。

weixin_29300241的博客 445

go html桌面,用 Go 开发桌面应用程序(GUI):Webview、Lorca 与 Electron

我想构建一个本地 Go 桌面应用程序,有几种方法可以做到:Electron[1]:将 Node.js[2] 和 Chromium[3] 浏览器绑定在一起,以创建一个打包的本地 Web 应用程序。可与 Go 框架(例如 go-app[4] 或 go-astilectron[5])一起使用。Lorca[6]:使用本地安装的 Chrome 浏览器,通过 dev-tools communication p...

weixin_42146230的博客 7034

伺服驱动器启用后对传感器线信号干扰的解决方案

在一些Arduino项目中,研究者发现,当伺服电机启动时,传感器信号会出现显著噪声。例如,在一个假肢项目中,研究者使用光电隔离器成功隔离了伺服驱动器对EMG传感器的干扰。然而,当启用伺服驱动器时,传感器线信号常常受到干扰,导致系统性能下降。传感器线信号是传感器输出的电信号,用于测量物理量,如温度、光线或位置。例如,在一些案例中,伺服驱动器的开关操作可能导致传感器信号出现尖峰或波动,特别是在模拟传感器上更为明显。描述: 使用光电隔离或其他隔离技术,分离伺服驱动器和传感器的电气路径,防止直接干扰。

有用好玩有趣的“电”知识 1466

小白也能懂!一步步教你用FPGA加速YOLO目标检测(入门篇)

安装到 PYNQ 开发板中。该库为 PYNQ 平台提供了对量化神经网络(如 YOLO)的硬件加速支持。确保你的电脑已连接到外网,如 WiFi 或热点(手机热点理论上也可用,未实测)。当你看到安装成功的提示后,打开 Jupyter Notebook,你会发现在。趁这个机会,泡了杯茶,刷了会儿手机,顺便感慨了一下开源社区的强大……页面中多出了一些新的项目文件夹 —— 这就是我们刚才安装的。参数,浅拷贝只克隆最近一次提交,减少数据量,避免超时问题。初始化,打开该文件,即可运行我们的Tiny YOLO。

FJN110的博客 1596

终极指南:10分钟掌握Lorca,用Go+HTML5快速构建跨平台桌面应用

🚀 想要用Go语言快速构建现代化桌面应用?Lorca正是你的理想选择!这个轻量级库让你能够使用Go和HTML5技术栈,在短短几分钟内创建功能完整的跨平台桌面应用程序。 ## 什么是Lorca? Lorca是一个纯Go库,使用Chrome浏览器作为UI层来构建现代HTML5桌面应用。与Electron不同,Lorca不会将Chrome打包到应用包中,而是重用已安装的Chrome实例,这使得应用

gitblog_00597的博客 972

SAP Word 模板与 ABAP XML 数据流合并机制深度解析

Office Open XML 标准把一个.docx拆分成多个部件(document.xml、customXml\item1.xml 等),天然支持命名空间与 XPath;Word 在渲染时,会扫描<w:sdt>(结构化文档标签)与来确定绑定关系;在 ABAP 端,通过简单字符串替换与 XSLT 变换即可完成数据灌入,无需 COM Automation,安全且易于调试。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 371

Lorca 开源项目使用教程

Lorca 是一个用于构建 Go 语言桌面应用程序的库,它允许开发者使用 Go 语言编写 UI 逻辑,并通过 HTML/CSS 来设计界面。Lorca 利用 Chrome 浏览器作为 UI 引擎,使得开发者可以快速构建跨平台的桌面应用。 ## 项目快速启动 ### 安装 Lorca 首先,确保你已经安装了 Go 语言环境。然后,通过以下命令安装 Lorca: ```bash go get ...

gitblog_00556的博客 623

三菱FX5U气缸控制功能块(完整ST源代码+示例程序)

如果机器包含100个气缸,我们只需要修改数组的元素数量就可以了,效率非常的高。待续....博途PLC 面向对象系列之“双通气缸功能块“(SCL代码)_plc面向对象-优快云博客文章浏览阅读667次。本文介绍了博途PLC中面向对象编程的应用,重点讲解了双通气缸的功能块设计,包括双通电磁阀功能块、双通气缸的UDT数据类型以及SCL代码实现。同时,对比了双通与单通电磁阀的差异,并讨论了将单通气缸改造为双通气缸的方法,强调了双通气缸在安全性上的优势。

RXXW_Dor的博客 1026

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

如何跑通一台 7 自由度开源仿人机械臂:OpenArm 遥操作与数据采集实操

商用 7 自由度机械臂价格高、控制栈封闭,研究者很难二次开发。OpenArm 是一个完全开源的 7 自由度仿人机械臂,硬件、固件、CAN 控制与仿真工具全部开放,覆盖遥操作、模仿学习和真实环境数据采集。 [![OpenArm 开源 7 自由度仿人机械臂与标准化评测环境](https://raw.gitcode.com/GitHub_Trending/op/OpenArm/raw/e8da02c1

gitblog_00897的博客 793

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Lorca性能瓶颈分析:Chrome性能面板与Go追踪工具

你是否在开发Lorca应用时遇到过界面卡顿、响应延迟的问题?本文将带你深入理解Lorca应用的性能瓶颈,通过Chrome性能面板与Go追踪工具的结合使用,精准定位并解决性能问题,让你的跨平台桌面应用流畅运行。读完本文,你将掌握:Lorca应用性能分析的完整流程、Chrome DevTools性能面板的使用技巧、Go语言内置追踪工具的应用方法,以及一个实际案例的性能优化全过程。 ## Lorca应...

gitblog_00158的博客 1036

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

零基础快速上手Lorca:用Go语言构建HTML5桌面应用的终极指南

想要用Go语言快速构建跨平台桌面应用吗?Lorca正是你需要的解决方案!Lorca是一个强大的Go语言库,让你能够使用熟悉的HTML5技术栈来开发现代桌面应用程序。无论你是前端开发者想要涉足桌面开发,还是Go程序员希望创建图形界面,Lorca都能为你提供简单高效的开发体验。🚀 ## 什么是Lorca及其核心优势 Lorca的核心思想非常巧妙:它通过嵌入Chrome/Chromium浏览器来渲

gitblog_01031的博客 896

【Go|第6期】浅谈Lorca页面中Chrome正受到自动测试软件的控制

上期教程《【Go|第5期】Lorca无法正常运行的解决方案》解决了Chrome安全机制导致无法正常运行Lorca程序的问题。小伙伴们可能又发现了另外一个问题,Lorca窗口的副标题上Chrome正受到自动测试软件的控制。虽然功能方面不受影响,但是这一行字却足以让你的用户感到困惑。

Commas的博客 2077

Lorca:构建轻量级HTML5桌面应用的Go库

[Lorca](https://github.com/zserge/lorca),一款小巧却强大的Go库,让你能以现代HTML5技术构建桌面应用程序,并利用已安装的Chrome浏览器作为UI层。与Electron不同,Lorca不将Chrome打包进应用,而是智能地重用系统中已有的版本,这使得应用的体积保持在5-10MB之间。 ### 项目技术分析 Lorca的核心是通过Chrome DevT...

gitblog_00086的博客 900

html5跨平台桌面打包,Lorca:使用Go + HTML5构建跨平台的现代桌面应用程序

Lorca A very small library to build modern HTML5 desktop apps in Go. It uses Chrome browser as a UI layer. Unlike Electron it doesn't bundle Chrome into the app package, but rather reuses the one t...

weixin_34831191的博客 1057

Lorca WebGL着色器开发:Go生成与JavaScript渲染

Lorca是一个让开发者能够使用Go语言和HTML5构建跨平台现代桌面应用的框架,其核心优势在于将Go的后端处理能力与Web前端的渲染能力完美结合。通过Lorca,开发者可以利用Go语言处理复杂的业务逻辑和数据计算,同时借助HTML5/JavaScript实现丰富的用户界面和交互效果。 项目结构中,[examples/counter/main.go](https://link.gitcode.c...

gitblog_00780的博客 830

Go Web技术桌面应用开发:Wails、Lorca、Muon框架深度解析

在当今软件开发领域,使用Go语言结合Web技术构建桌面应用已成为一种高效且流行的方案。本文将深入解析Wails、Lorca和Muon这三大Go GUI框架,帮助开发者了解它们的特点、优势及适用场景,轻松开启Go桌面应用开发之旅。 ## 为什么选择Go Web技术开发桌面应用? Go语言以其简洁高效、跨平台支持和强大的并发能力著称,而Web技术则提供了丰富的UI组件和灵活的界面设计方案。将两者结

gitblog_01117的博客 503

如何用Lorca快速构建跨平台桌面应用:Go与HTML5的完美结合

Lorca是一个轻量级的Go库,让你能够使用Go语言和HTML5技术快速构建现代化的跨平台桌面应用程序。相比Electron等传统方案,Lorca具有更小的应用体积和更高的开发效率。 ## 🚀 为什么选择Lorca? Lorca的核心优势在于它利用本地已安装的Chrome浏览器作为UI层,而不是将整个浏览器打包到应用中。这种方式让你的应用体积保持在5-10MB左右,远小于传统的桌面应用框架。

gitblog_00265的博客 671

Lorca内存泄漏排查:Chrome DevTools与Go pprof协同分析

你是否在使用Lorca开发桌面应用时遇到过内存占用持续增长的问题?本文将详细介绍如何结合Chrome DevTools和Go pprof工具链,系统性地定位和解决Lorca应用中的内存泄漏问题。通过本文,你将掌握: - Lorca应用内存泄漏的常见表现与成因 - 使用Chrome DevTools分析前端JavaScript内存问题 - 利用Go pprof定位Go后端内存泄漏 - 结合前后端工...

gitblog_00651的博客 680
上一篇: golang gui 那些事
mx_steve
博客等级 码龄8年 57粉丝 102原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值