导读:fyne是用Go语言编写的跨平台UI库。开发中发现widget.NewLabel和canvas.newText无法自动换行会撑开宽度。有三种解决方法:①使用canvas.newText时自行计算宽度分多行绘制;②在widget.NewLabel的文本中添加“\n”实现换行;③将widget.NewLabel放入form布局并设置宽度,如示例代码中创建formlayout容器,添加多个标签组件后调整尺寸,即可实现自动换行效果。
fyne是 Go 语言编写的跨平台的UI 库。
使用Fyne可以很方便的开发出客户端工具,但是在开发过程中发现widget.NewLabel和canvas.newText不能自动换行,会撑开宽度。
下面就介绍三种方法来让文本换行。
1.canvas.newText使用时自己计算宽度多绘制几行。
2.widget.NewLabel,在文本中加上“\n”,如:
widget.NewLabel("服务器状态\n服务器状态服务器状态服务器\n状态服务器状态服务器状态")
3.将widget.NewLabel组件放到form布局设置form布局宽度中会自动换行
formlayout := container.New(layout.NewFormLayout(),
widget.NewLabel("CPU型号:"),
text,
widget.NewLabel("核心数量:"),
widget.NewLabel(strconv.Itoa(cores)),
)
formlayout.Resize(fyne.NewSize(200, 300))

苏公网安备 32111202000338号