使用goland IDE编写go windows ui

最近突发奇想,想实现一款工作节奏的提示安排小闹钟。那首先解决的就是UI。本人擅长go语言。那go在windows ui的探索肯定有人做过了吧。一查还真有,通过知乎,csdn等查到目前支持最好的就是walk库了。那走起试试。

一、拷贝go代码

将官网例子(国内可以找码云)放入文件test.go:

package main

import (
	"strings"

	"github.com/lxn/walk"
	. "github.com/lxn/walk/declarative"
)

func main() {
	var inTE, outTE *walk.TextEdit

	MainWindow{
		Title:   "zishen-test",
		MinSize: Size{666, 666},
		Layout:  VBox{},
		Children: []Widget{
			HSplitter{
				Children: []Widget{
					TextEdit{AssignTo: &inTE, MaxLength: 10},
					TextEdit{AssignTo: &outTE, ReadOnly: true},
				},
			},
			PushButton{
				Text: "SCREAM",
				OnClicked: func() {
					outTE.SetText(strings.ToUpper(inTE.Text()))
				},
			},
		},
	}.Run()
}

在同一目录下新建test.manifest,内容如下:


    
        
        
            
                
            
        
    

二、设置goland环境

从file-》setting

使用goland IDE编写go windows ui_第1张图片

设置goroot为本地go的安装路径

使用goland IDE编写go windows ui_第2张图片

设置gopath,为第一步test.go所在目录的上一级目录。

使用goland IDE编写go windows ui_第3张图片

设置编译的os(windows吧)

使用goland IDE编写go windows ui_第4张图片

三、编译

1、编译前准备

进入目录,设置mod名称,下载依赖。如下图所示。

使用goland IDE编写go windows ui_第5张图片

2、编译rsrc

注意在gopath的pkg目录中,且编译完成后需要将对应的exe放到go的bin目录下,如下所示

使用goland IDE编写go windows ui_第6张图片

编译rsrc文件

使用goland IDE编写go windows ui_第7张图片

3、编译go文件

配置输出路径。我放在和go文件一个目录下

使用goland IDE编写go windows ui_第8张图片

使用goland IDE编写go windows ui_第9张图片

编译:

使用命令go build -ldflags="-H windowsgui"

使用goland IDE编写go windows ui_第10张图片

四、运行

使用goland IDE编写go windows ui_第11张图片

确实运行起来了。后面再优化吧

五、参考

goLang 如何开发 windows 窗口界面

你可能感兴趣的:(Go,ide,golang,windows)