Golang gui walk入门教程(一)安装walk环境

一、golang环境

        Go 1.11.x or later

二、安装walk
go get github.com/lxn/walk
三、安装rsrc

        运行walk程序需要manifest,rsrc提供了这个功能

go install github.com/akavel/rsrc

        安装完成后在GOPATH的bin下面会有一个rsrc.exe的可执行文件

在idea的termial输入rsrc会出现如下信息

 四、编写manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"><assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="SomeFunkyNameHere" type="win32"/><dependency><dependentAssembly><assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/></dependentAssembly></dependency><asmv3:application><asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"><dpiAware>true</dpiAware></asmv3:windowsSettings></asmv3:application>
</assembly>
五、生成rsrc.syso
rsrc -manifest gui.manifest -o rsrc.syso

会出现一个rsrc.syso文件

 六、编写HelloWorld

package mainimport ("github.com/lxn/walk/declarative""log"
)func main() {mw := declarative.MainWindow{Title:"this is title",Size: declarative.Size{Width:500,Height:500},Layout:declarative.VBox{MarginsZero:true},Children: []declarative.Widget{declarative.TextLabel{Text:"Hello Walk!!!"},},}_, err := mw.Run()if err != nil{log.Println("启动出错",err)}
}

直接运行main方法不能成功,会报一个 TTM_ADDTOOL failed的错误

1、修改IDEA的运行方式

如果想在idea里面启动运行需要改下执行配置,默认是go build main.go,编译时他不会把生成的rsrc.syso文件包含进去

 将其改成文件夹形式

 再次运行

 2. 在Terminal中go build 生成exe,双击exe

 这种方式不方便调试

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二维码生成器简单使用

生成器工具类 以下是一个简单的 QRCodeUtil 示例&#xff0c;这个工具类使用了 zxing 库来生成二维码图片&#xff1a; import com.google.zxing.BarcodeFormat; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.QRCodeWriter;import javax.image…

C语言、C++和C#:区别与特点的比较

C语言、C和C#是三种不同的编程语言&#xff0c;它们在以下几个方面存在区别&#xff1a; 设计宗旨&#xff1a;C语言是一种过程式编程语言&#xff0c;旨在提供高效的系统级编程。C是在C语言基础上发展而来的&#xff0c;既支持过程式编程&#xff0c;也支持面向对象编程。C#是…

出海企业系列风险分析--网站需要验证码吗?

最近接待了几位从discuz来的用户&#xff0c;说是想要给自己海外的网站安装验证码&#xff0c;但是discuz境外服务器还要解析安装中心的DNS到境外服务器上&#xff0c;所以基于discuz建站的不好之处就在这里。 而且我们还讨论到一个问题&#xff0c;海外的网站&#xff0c;需要…

C#制作打包安装程序,安装程序类使用

这里写目录标题 安装Microsoft Visual Studio Installer Projects创建安装项目设置安装程序文件设置程序桌面图标给程序设置安装程序名称安装程序类怎么使用Installer1.cs自定义安装步骤自定义设置安装程序路径&#xff0c;让用户安装时不能选择安装路径生成安装包 安装Microso…

数据结构(王道)——顺序表的基本操作(查找)

顺序表基本操作之按位查找&#xff1a; 顺序表基本操作之按值查找&#xff1a; 关于结构体类型是否相等的比较方法 顺序表查找总结&#xff1a;

Mysql select查询练习

1、查询出部门编号为30的所有员工&#xff1a; select * from emp where deptno30; 2、所有销售员的姓名、编号和部门编号&#xff1a; select ename,empno,deptno from emp where job销售员; 3、找出奖金高于工资的员工&#xff1a; select * from emp where comm > sai…

2023-7-12-第十七式状态模式

&#x1f37f;*★,*:.☆(&#xffe3;▽&#xffe3;)/$:*.★* &#x1f37f; &#x1f4a5;&#x1f4a5;&#x1f4a5;欢迎来到&#x1f91e;汤姆&#x1f91e;的csdn博文&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f49f;&#x1f49f;喜欢的朋友可以关注一下&#xf…

获取全国各地行政区的genjson数据以及使用leaflet加载行政区数据

前言 在写代码之前&#xff0c;我们需要做一些准备工作&#xff0c;需要有一份某个行政区的geojson数据&#xff0c;如果你没有也没关系&#xff0c;我们可以去下载&#xff0c;地址&#xff1a;geojson数据下载网站 打开网站&#xff0c;选择自己想要获取的行政区&#xff0…

【FAQ】API6低代码开发问题汇总

参考文档&#xff1a; 低代码开发参考文档&#xff1a; 文档中心:使用低代码进行开发 基于景区模板开发元服务&#xff1a; 文档中心:模板简介 使用API6低代码开发遇到的问题汇总情况如下&#xff1a; 1、低代码环境下&#xff0c;如何实现box-shadow阴影效果的配置&#…

瑞萨RFP工具使用问题总结

最近在用瑞萨的RH850&#xff0c;需要用到瑞萨提供的刷新工具RFP&#xff08;Renesas Flash Programmer&#xff09;&#xff0c;但是总是遇到一些问题&#xff0c;除了一些能够在官网上找到答案的问题&#xff0c;还遇到了其他各种各样的问题&#xff0c;这里记录一下问题和对…

(五)Flask之深入剖析路由源码

路由&#xff08;Route&#xff09;这个概念在所有web框架中都非常重要&#xff0c;它是用于定义URL和对应的处理函数&#xff08;视图&#xff09;之间的映射关系。通过定义路由&#xff0c;可以使web框架应用程序能够响应不同的URL请求&#xff0c;并执行相应的逻辑。 源码剖…

巧用浮动布局、解决高度塌陷实例分享

问题 如图所示&#xff0c;这种效果该怎么实现呢&#xff1f; 面包屑导航和按钮一行两端显示面包屑或编辑栏超出宽度则自动另行显示 实现 采用浮动&#xff0c;绿色块左浮&#xff0c;蓝色块右浮&#xff0c;利用浮动特性实现宽度超出另一行显示的效果&#xff0c;并是动态的…