【Go Fyne】 四行核心代码实现你的第一个GUI界面(上)Go语言GUI-Go Fyne
前言
本篇文章主要介绍使用Go Fyne来实现Go语言的GUI开发,主要内容为搭建Go Fyne的开发环境。
一、环境搭建
使用Go Fyne来开发GUI,需要设置好Go语言的开发环境,参考该文章:Go语言0基础学习之旅#1设置开发环境
在设置好Go的开发环境之后,我们需要安装chocolatey、make和C编译器来构建Go Fyne的开发环境。其中,make是通过chocolatey来安装的。
1.1 chocolatey安装
对于chocolatey的安装,有许多的方法,在这里我选择使用windows的cmd来安装。
chocolatey的安装网址:INSTALLING CHOCOLATEY
进入该网址,可以使用powershell或者cmd来安装。根据网页里提供的步骤安装即可。
对于cmd的安装:

第一步,找到cmd,右键使用管理员身份打开cmd:

第二步,将代码复制到命令窗并按下回车:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
等待几分钟,即可完成安装:

第三步,安装结束后,输入指令:choco /?,如果出现如下界面,则说明chocolatey安装成功。

其他系统的安装和其他的安装方法可参考chocolatey的社区资料:chocolatey社区
1.2 make安装
在成功安装chocolatey之后,我们使用其下载make。
以管理员身份打开cmd,输入如下指令:
choco install make
等待片刻即可安装成功:

1.3 C编译器安装
来到了搭建环境的最后一步了!我们给电脑安装一个C compiler(C编译器)——tdm-gcc。
下载地址如下:https://developer.fyne.io/started/
选择Windows:

选择对应的版本:

下载完成之后按照提示安装即可。
当然,也可以按照官网推荐安装msys2,参照官网给出的方法安装即可。
到此为止,Go Fyne 的开发环境搭建完成!
二、代码编写
打开vscode之后,我们在对应的src目录下建立对应的文件夹。
我的路径为:D:\GO\GO_project\src\go-fyne-GUI\project_1
Go语言的基础工具命令学习可参考:Go语言0基础学习之旅#2 Go语言常用工具命令
第一步,在终端窗口中输入以下指令:
go mod init fynehw
创建了一个新的go.mod,我们取名为fynehw(“hw”即代表hello world),如下:

第二步,在终端窗口中输入以下指令:
go get fyne.io/fyne/v2
如下所示:

第三步,我们右键新建一个main.go的文件:

第四步,在main.go中输入如下代码:
package main
import (
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/widget"
)
func main() {
a := app.New()
w := a.NewWindow("Hello, World!")
w.SetContent(widget.NewLabel("Hello, World!"))
w.ShowAndRun()
}
第五步,当我们输入代码之后,会显示一些错误。这是因为此时还没有加入对应的依赖包。
我们在终端窗口中输入:go mod tidy。操作如下:

go mod tidy工具命令的作用:
等待片刻,发现已有的错误已经消失,显示结果如下:(go tidy是手误打错的,不用在意)

第六步,我们输入go run .来运行代码:

第一次运行需要等待一段时间,让C compiler完成编译,此后的代码运行速度会变快。
最终的运行结果如下:

我们已经成功使用Go语言在Go Fyne的框架下实现了GUI界面的制作!
最后只需要关闭GUI界面的窗口,即可停止程序的运行:

后记
本篇文章主要关注Go Fyne的环境搭建,对于环境搭建中各部分的作用,以及本篇中每句代码的用法和意义请参考第二篇文章:【Go Fyne】 四行核心代码实现你的第一个GUI界面(下)Go语言GUI-Go Fyne
大家可以订阅该系列以获取最新的学习分享!


1万+

被折叠的 条评论
为什么被折叠?



