一、第一個 Go Walk 程序
package main import ( . "github.com/lxn/walk/declarative" ) func main() { mainWindow.Run() } var LableHello=Label{ Text: "Hello world!", } var widget=[]Widget{ LableHello, } var mainWindow=MainWindow{ Title:"MainWindow", MinSize:Size{400, 200}, Layout:VBox{}, Children:widget, }
編譯:go build -ldflags="-H windowsgui"
MainWindows 常用屬性:
TiTle 標題,
Size尺寸
Layout排列方式VBox(垂直排列)、HBox(水平排列)
ContextMenuItems,上下文菜單 ,[]MenuItem類型
Children控件列表,[]Widget類型
MenuItems主菜單列表 ,[]MenuItem類型
ToolBarItems工具欄列表 ,[]MenuItem類型
二、變量:
變量聲明
Go語言引入了關鍵字 var ,而類型信息放在變量名之后,示例如下:
var i int var str string
var 關鍵字可以將若干個需要聲明的變量放置在一起,避免重復,如下所示:
var ( i int str string )
變量初始化
var i int = 10 var str = "Hello" i3 := 10
第三種i3自動識別為int類型
注:當定義全局變量時不能用第三種方法
有相同類型的多個變量同樣可以在一行內完成聲明:
var x, y int
讓 x 和 y 都是 int類型變量。
同樣可以使用平行賦值:
a, b := 1,2
交換 i 和 j 變量的語句,不需要引入中間變量:
i, j = j, i
Go 的編譯器對聲明卻未使用的變量在報錯。
一個特殊的變量名是 _ (下划線)。任何賦給它的值都被丟棄。
_, b := 1, 2
在這個例子中,將 2賦值給 b ,同時丟棄 1。
二、基本類型
1、bool 類型,長度為1 ,只有true, false兩種,注:不能把非零值當作 true
2、byte類型,長度為了, uint8 別名
3、int類型
a.rune 類型,長度為4 ,int32 別名。代表一個 Unicode 字符。
b.int/uint 4 依據所運行的平台,可能是 32bit 或 64bit。
c.int8/uint8 1 1 -128 ~ 127; 0 ~ 255
d.int16/uint16 2 -32768 ~ 32767; 0 ~ 65535
e、int32/uint32 4 -21 億 ~ 21 億, 0 ~ 42 億
4、復數類型
a.complex64 ,即 32 位實數+32 位虛數
b.complex128 復數類型,即 64 位實數+64 位虛數
5、uintptr 能夠保存指針的 32 位或 64 位整數
6、array 數組,如:[2] int
7、struct 結構體,
8、string
9、slice如: []int
10、map
11、channel