【发布时间】:2022-11-21 02:45:17
【问题描述】:
我是编程新手,我想开发一个应用程序,但我需要在我的应用程序中向用户显示非常大的文本。 我不确定 widget.NewRichTextWithText() 是否用于此目的。 此代码按预期工作。
package main
import (
"strings"
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/widget"
)
func main() {
a := app.New()
w := a.NewWindow("Some Practice")
w.Resize(fyne.NewSize(400, 400))
text := widget.NewRichTextWithText((strings.Repeat("this\n", 100)))
c := container.NewMax(container.NewVScroll(text))
w.SetContent(c)
w.ShowAndRun()
}
但是这个不起作用。
package main
import (
"image/color"
"strings"
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/canvas"
"fyne.io/fyne/v2/container"
)
func main() {
a := app.New()
w := a.NewWindow("Some Practice")
w.Resize(fyne.NewSize(400, 400))
text := canvas.NewText(strings.Repeat("this\n", 100), color.White)
c := container.NewMax(container.NewVScroll(text))
w.SetContent(c)
w.ShowAndRun()
}
因为当我运行应用程序时,“\n”显示为无效字符而不是新行。 我的目标是使用 canvas.NewText() 显示非常大的文本“从上到下可滚动”,但“\n”字符不起作用。它不是从上到下滚动显示文本,而是将其打印为 this?this?this?
【问题讨论】: