日期:2014-05-16 浏览次数:21074 次
1、利用github.com/lxn/walk包弄个桌面程序,然后得到本地ip地址显示出来在应用程序上(小程序,自己拼拼凑凑,以防自己用的着)
2、想不出现cmd编译编译时加入go build -ldflags="-H windowsgui"
3、用到github.com/lxn/walk,编译时与包同目录下要有rsrc.syso和 .mainfest两个文件
package main
import (
"fmt"
"log"
"net"
"strings"
)
import (
"github.com/lxn/walk"
. "github.com/lxn/walk/declarative"
)
func main() {
var te *walk.TextEdit
if _, err := (MainWindow{
Title: "Test",
MinSize: Size{300, 200},
Layout: VBox{},
Children: []Widget{
TextEdit{
AssignTo: &te,
},
PushButton{
Text: "LocalAddr",
OnClicked: func() {
text := GetAddr()
te.SetText(text)
},
},
},
}).Run(); err != nil {
log.Fatal(err)
}
}
func GetAddr() string { //Get ip
conn, err := net.Dial("udp", "baidu.com:80")
if err != nil {
fmt.Println(err.Error())
return "Erorr"
}
defer conn.Close()
return strings.Split(conn.LocalAddr().String(), ":")[0]
}
本文章来至源码世界 http://www.ymsky.net/views/73305.shtml