golang Fyne 下拉选择器 widget.NewSelect

发布时间 2023-09-11 18:06:19作者: 芹菜是一根葱

环境:go fyne

要求:在窗口中添加下拉选择器,并显示选择的内容

效果:

实现:

 1 package main
 2 
 3 import (
 4     "fmt"
 5     "fyne.io/fyne/v2"
 6     "fyne.io/fyne/v2/app"
 7     "fyne.io/fyne/v2/container"
 8     "fyne.io/fyne/v2/widget"
 9 )
10 
11 func main() {
12     // 创建 Fyne 应用实例
13     a := app.New()
14 
15     // 创建窗口
16     w := a.NewWindow("Fyne Demo")
17 
18     // 创建两个标签组件
19     label1:= widget.NewLabel("sel:")
20 
21     var data = []string{"Beijing", "Shenzhen", "Shanghai"}
22 
23     selector := widget.NewSelect(data, func(selected string) {
24         label1.SetText("sel:" + selected) // 更新标签内容
25     })
26     //设置选择的选项
27     selector.SetSelected(data[0]) 
28     //打印选择的选项
29     fmt.Println("===",selector.Selected)
30 
31     // 新建容器
32     tutorial := container.NewVBox( 
33         selector,
34         label1, 
35     )
36     // 设置窗口内容
37     w.SetContent(tutorial)
38 
39     // 设置窗口尺寸
40     w.Resize(fyne.NewSize(640, 460))
41 
42     // 显示窗口并运行应用
43     w.ShowAndRun()
44 }