Go语言桌面GUI库(lxn/walk )
(lxn/walk 起步教程)
dodod2012
其实我是一个搬运工,搬走了别人的砖头从来不留名O(∩_∩)O哈哈~
展开
-
go walk 使用文件选择框后导致ioutil出现相对路径错误
go walk框架,如果使用了文件选择框,再使用ioutil读取相对路径文件,会导致文件目录指向文件选择框最后位置,而不是程序位置。应当使用exec获取程序路径手动拼接为绝对路径。转载 2021-09-23 14:13:58 · 559 阅读 · 0 评论 -
golang开发windows服务管理桌面程序(lxn/walk)
通常小的项目都部署在用户Win server中,数据库、web服务和业务系统各部署一个Windows服务,在Windows的服务管理程序即可管理。最近一个小项目用户提了个需求,需要一个win服务的管理界面,索性用golang lxn/walk做了一个。现分享出来,供大家参考。源码地址:serviceMonitor源码运行环境:windows server 2012运行界面:代码很简单,定义了三个全局变量,对应三个服务,自行修改为自己项目中用到的服务信息myService.txt 对应.转载 2021-09-23 10:41:48 · 1965 阅读 · 0 评论 -
Go的GUI库Walk——布局
go 的gui库比较多,但许多缺乏官方文档,学习起来有一定的困难。经过再三考虑,本人选择了其中的walk库进行学习,这个库只能运行在windows平台上。walk库的语法风格像JavaScript,可以快速构建gui程序,界面也美观。同时walk库利用反射实现了响应式,可以使界面中的值与变量双向绑定,十分方便。当然如果想做的十分美观,还是使用Qt。本人学习是通过github上给的例子。按照一般gui库的学习思路进行整理。创建基本的窗口可以在GitHub上找到例子窗口package mainim转载 2021-09-17 16:28:51 · 2445 阅读 · 3 评论 -
Golang使用lxn/walk做GUI界面开发:邮件群发器
我也是刚刚使用walk这个组件,很多控件接口不熟悉,把我上次发的邮件群发器修改成图形界面的,线程发送邮件,gob库保存数据等。只提供作学习交流,仅供参考。接下来是main.go的代码:// Multi-SendEmail project main.gopackage mainimport ( "bufio" "encoding/gob" "errors" "fmt" "io" "net/smtp" "os" "strconv"转载 2021-09-07 16:23:46 · 1238 阅读 · 3 评论 -
Go GUI---lxn/walk 自带demo学习---22.webview
简单说明:webview的简单使用,存在许多待优化的地方,┭┮﹏┭┮webview.go// Copyright 2010 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "strings" "git...原创 2021-08-26 15:46:35 · 753 阅读 · 5 评论 -
Go GUI---lxn/walk 自带demo学习---21.tableview
简单说明:一个复杂的tableview。tableview.go// Copyright 2011 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "fmt" "math/rand" "sort"...原创 2021-08-26 15:22:30 · 1189 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---20.statusbar状态栏
简单说明:状态栏总共五个StatusBarItem第一个既有文字还有图标,而且处理了点击事件,点击后能切换图标。其余四个只是简单的展示了文件和图标。statusbar.go// Copyright 2017 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file..原创 2021-08-26 14:51:54 · 547 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---19.slider
slider.go// Copyright 2016 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "log" "github.com/lxn/walk" . "github.com/lxn/walk/d...原创 2021-08-26 11:28:12 · 350 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---18.settings
这个叫Settings的demo究竟是干啥的啊???它这里面主要用了TableView这个控件啊.settings.go// Copyright 2013 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport (...原创 2021-08-26 11:22:55 · 398 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---17.radiobutton单选框
radiobutton.go// Copyright 2013 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "fmt")import ( . "github.com/lxn/walk/declara...原创 2021-08-26 11:01:41 · 430 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---16.notifyicon通知图标
简单说明:通知图标demo,原文都有注释,很好理解需要一个walk.MainWindow或一个walk.Dialog用于他们的消息循环。但是本例中让MainWindow 不可见。创建通知图标,并确保在退出时将其清除// Create the notify icon and make sure we clean it up on exit. ni, err := walk.NewNotifyIcon(mw) if err != nil { log.Fatal(err) } d...原创 2021-08-25 16:48:24 · 750 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---15.multiplepages
multipagemainwindow.go// Copyright 2017 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "github.com/lxn/walk" . "github.com/lxn...原创 2021-08-25 15:31:52 · 601 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---14.logview
logview.go// Copyright 2012 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "errors" "syscall" "unsafe")import ( "github.com/lxn原创 2021-08-25 15:04:41 · 421 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---13.listbox_ownerdrawing
listbox_ownerdrawing.go// Copyright 2019 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "fmt" "log" "strings" "time" "github...原创 2021-08-25 11:27:01 · 413 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---12.ListBox
界面左侧一个ListBox,右侧一个TextEdit。ListBox展示的是通过os.Environ()获取的系统环境变量,获取的是 key=val的[]stringlistbox.go// Copyright 2012 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENS...原创 2021-08-25 11:16:21 · 588 阅读 · 1 评论 -
Go GUI---lxn/walk 自带demo学习---11.超链接标签
lindlabel.go// Copyright 2017 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "log")import ( "github.com/lxn/walk" . "github.com原创 2021-08-25 10:02:46 · 268 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---10.imageview
imageview.go// Copyright 2017 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "github.com/lxn/walk" . "github.com/lxn/walk/decl...原创 2021-08-24 16:41:10 · 432 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---9.imageicon
一些说明:imageicon.go// Copyright 2012 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "image" "image/color" "image/draw" "l...原创 2021-08-24 15:56:19 · 297 阅读 · 1 评论 -
Go GUI---lxn/walk 自带demo学习---8.gradientcomposite
gradientcomposite.go// Copyright 2017 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "github.com/lxn/walk" . "github.com/lxn/w...原创 2021-08-24 15:27:03 · 329 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---7.文件浏览器
如上图,从左到右用来TreeView、TableView、WebView定义了一个名为Directory的目录结构体,每个目录理论上有一个父节点,有0到n个子节点。type Directory struct { name string parent *Directory children []*Directory}filebrowser.go// Copyright 2011 The Walk Authors. All rights reserved....原创 2021-08-24 15:18:33 · 883 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---6.externalwidgets
自定义小部件?externalwidgets.go// Copyright 2012 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package mainimport ( "log" "github.com/lxn/walk" . ".原创 2021-08-24 11:09:08 · 543 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---5.拖拽文件dropfiles
功能比较简单:拖拽文件到对话框,然后显示文件路径。应用场景:QQ聊天中,只要把文件拖拽到消息框中就可以传送文件了。dropfiles.go// Copyright 2013 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package main原创 2021-08-24 10:12:16 · 707 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---4.画图drawing
简单说明:createBitmap()函数创建里中间那个矩形,当然因为宽和高都设置成了200,呈现的是正方形。背景通过画刷brushBmp设置为加号图片。drawing.go// Copyright 2010 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICEN...原创 2021-08-23 16:24:34 · 716 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---3.数据绑定 databinding
这个demo纵向布局,从上到下是一个PushButton、一个Label、一个TextEdit。点击名称为Eidt Animal的按钮弹出自定义的对话框,进行编辑,编辑完成后点击OK按钮,TextEdit用于显示编辑的内容。databinding.go// Copyright 2013 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license原创 2021-08-23 11:32:57 · 1309 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---2.剪切板(复制粘贴)clipboard
这个剪切板功能很好理解,就是复制粘贴(Ctrl+c/Ctrl+v)功能的展示。定义了一个TextEdit两个PushButton。比如在其他地方复制了内容,直接点击Paste就会在TextEdit里显示。clipboard.go// Copyright 2013 The Walk Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be原创 2021-08-20 16:40:56 · 772 阅读 · 0 评论 -
Go GUI---lxn/walk 自带demo学习---1.菜单栏和工具栏actions
在MainWindow结构体里已经定义好了菜单栏和工具栏 // MainWindow AssignTo **walk.MainWindow Expressions func() map[string]walk.Expression Functions map[string]func(args ...interface{}) (interface{}, error) MenuItems []MenuItem OnDropFiles原创 2021-08-20 16:23:41 · 683 阅读 · 0 评论 -
Go GUI---lxn/walk 学习---3.菜单栏和工具栏
具体实现:菜单栏和工具栏的定义,消息窗口的产生,文件放置动作响应和提示框的应用部分代码来自上一篇博客:https://blog.csdn.net/kgjn__/article/details/89288550部分来自 lxn/walk 官方示例package mainimport ( "fmt" "io" "os" "strings" "github.com/lxn/walk" . "github.com/lxn/walk/declarative")type MyMainW转载 2021-08-19 16:00:01 · 715 阅读 · 0 评论 -
Go GUI---lxn/walk 学习---2.文件选择器
package mainimport ( "fmt" "io" "os" "strings" "github.com/lxn/walk" . "github.com/lxn/walk/declarative")type MyMainWindow struct { *walk.MainWindow edit *walk.TextEdit}func main() { mw := &MyMainWindow{} err := MainWindow{ Assign.转载 2020-09-17 16:06:13 · 1586 阅读 · 0 评论 -
5.3 Go语言项目实战:walk常用控件
本篇文章IT兄弟连GO语言学院小美给读者们分享一下walk常用控件,对GO语言感兴趣想要学习Golang开发技术的小伙伴就随小编来了解一下吧。认识几种常用控件按钮 菜单 工具栏 界面布局 列表 显示图片导入依赖import ( "github.com/lxn/walk" . "github.com/lxn/walk/declarative" "os" "strings" "io/ioutil" "fmt" "log").转载 2020-09-03 10:31:20 · 2474 阅读 · 0 评论 -
5.2 Go语言项目实战:初识Walk GUI
GO语言的图形界面库Walk简介GO没有原生的界面库,所以不能直接用来写GUI界面。但最近互联网上已经涌现出不少成熟、好用的第三方界面库。使用它们,就同样可以写出同C#、C++的界面。而且效率还更胜一筹。关于Walk界面库(官方介绍):Walk是一个写给Golang的Window应用程序库套件,它主要用于桌面GUI的开发,但也有更多的东西。###安装Walk 在浏览这部分前,请确定已经配置安装完毕go语言的环境。如果没有,可以参考go官网的Install帮助。另外,注意:这个Walk库只能运行在G.转载 2020-09-03 10:30:11 · 1115 阅读 · 1 评论 -
Go与GUI——GO语言的图形界面Walk
GO没有原生的界面库,所以不能直接用来写GUI界面。但最近互联网上已经涌现出不少成熟、好用的第三方界面库。使用它们,就同样可以写出同C#、C++的界面。而且效率还更胜一筹。 关于Walk界面库(官方介绍): Walk是一个写给Golang的Window应用程序库套件,它主要用于桌面GUI的开发,但也有更多的东西。Part One:安装Walk 在浏览这部分前,请确定已经配置安装完毕go语言的环境。如果没有,可以参考go官网的Install帮助。另...转载 2020-08-28 16:25:03 · 5011 阅读 · 0 评论 -
Go语言:Windows下最好用的桌面GUI库(lxn/walk 起步教程)
这篇转载的文章我运行不起来???尴尬,报的异常原文下面有评论,但是我还是无法解决panic: runtime error: invalid memory address or nil pointer dereference[signal 0xc0000005 code=0x0 addr=0x0 pc=0x61ae2e]goroutine 1 [running, locked to thread]:main.main()导言:本人(海东喵) 学过一堆 第三方 的 桌面GUI库,但是那些.转载 2020-08-27 16:31:33 · 5617 阅读 · 1 评论 -
goLang 如何开发 windows 窗口界面
今天找了一下。找到了一个 walk的一个东西。不用说下get一下这个pack下了再说go get github.com/lxn/walkget下来后 访问了一下github 页面看了一下作者的说明Walk是一个写给Golang的Window应用程序库套件,它主要用于桌面GUI的开发,但也有更多的东西。还有个 例子。package mainimport ( "strings" "github.com/lxn/walk" . "github.com/lxn/wal..转载 2020-08-27 15:39:35 · 5079 阅读 · 0 评论