Go GUI框架Fyne学习4_MultiLineEntry和Accordion
Go GUI框架Fyne学习4_MultiLineEntry和Accordion
MultiLineEntry 多行输入组件
//申明组件 test1 :=widget.NewMultiLineEntry() //获取文本 test1.Text //自动换行 test1.Wrapping=fyne.TextWrapBreak 其他设置与Entry类似
效果

Accordion 手风琴组件
Accordion结构体
type Accordion struct { BaseWidget Items []*AccordionItem MultiOpen bool } 从结构体可看出我们要往Items里面塞东西AccordionItem
AccordionItem结构体
type AccordionItem struct { Title string Detail fyne.CanvasObject Open bool } tiele是手风琴子组件的标题
detail是任意组件
open是默认打不打开
常用操作
//申明组件 test0 := widget.NewAccordion() //添加内容 item0 := widget.NewAccordionItem("1", widget.NewLabel("123")) test0.Append(item0) test0.Append(widget.NewAccordionItem("2", widget.NewLabel("123"))) //设置关闭第0个子组件,若在渲染前执行则相当于设置默认第0个子组件关闭 test0.Close(0) //关闭所有子组件,若在渲染前执行则相当于设置默认所有子组件关闭 test0.CloseAll() //打开第0个子组件,若在渲染前执行则相当于设置默认第0个子组件打开 test0.Open(0) //打开所有子组件,若在渲染前执行则相当于设置默认所有子组件打开 test0.OpenAll() //移除特定组件,此方法只对非匿申明的组件适用 test0.Remove(item0) //移除第0个手风琴子组件,对所有子组件适用 test0.RemoveIndex(0) 效果
