为了账号安全,请及时绑定邮箱和手机立即绑定

我无法用 tview 更新文本

我无法用 tview 更新文本

Go
侃侃尔雅 2022-10-24 16:03:45
我在 Go 语言中使用tview 。我想使用以下代码在终端上显示“hoge”,但它没有显示出来。package mainimport (    "fmt"    "github.com/rivo/tview")func main() {    tui := newTui()    tui.Run()    tui.WriteMessage("hoge")}type Tui struct {    app  *tview.Application    text *tview.TextView}func (t *Tui) Run() {    t.app.Run()}func (t *Tui) WriteMessage(message string) {    fmt.Fprintln(t.text, message)}func newTui() *Tui {    text := tview.NewTextView()    app := tview.NewApplication()    app.SetRoot(text, true)    text.SetChangedFunc(func() { app.Draw() })    tui := &Tui{app: app, text: text}    return tui}我不想更新newTui()函数中的文本。我如何让它显示出来?
查看完整描述

1 回答

?
慕工程0101907

TA贡献1887条经验 获得超5个赞

func (*Application) Run()

Run启动应用程序,从而启动事件循环。该函数在Stop()被调用时返回。

tui.WriteMessage("hoge")即永远不会到达程序中的语句,因为Run()直到显式停止才会返回。hoge因此,要在终端中看到打印,您必须tui.WriteMessage("hoge")  Run()调用.

func main() {
    tui := newTui()
    tui.WriteMessage("hoge")
    tui.Run()}


查看完整回答
反对 回复 2022-10-24
  • 1 回答
  • 0 关注
  • 80 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信