You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fyne Table初始化时不显示数据的问题求助

Fyne表格初始化无数据,点击后才加载的问题

我正在使用Fyne框架开发表格以展示交易数据,相关代码如下:

type transaction struct {
    Name   string
    Amount float64
    Date   time.Time
    Memo   string
}

var transactions []transaction

func init() {// Data population omitted }

func makeCenter() *fyne.Container {
    table := widget.NewTable(
        func() (int, int) {
            return len(transactions), 4
        },
        func() fyne.CanvasObject {
            return widget.NewLabel("wide content")
        },
        func(i widget.TableCellID, o fyne.CanvasObject) {
            switch i.Col {
            case 0:
                o.(*widget.Label).SetText(transactions[i.Row].Name)
            case 1:
                o.(*widget.Label).SetText(transactions[i.Row].Date.Format(YYYYMMDD))
            case 2:
                o.(*widget.Label).SetText(fmt.Sprintf("%.2f", transactions[i.Row].Amount))
            case 3:
                o.(*widget.Label).SetText(transactions[i.Row].Memo)
            }
        },
    )
    table.SetColumnWidth(0, 200)
    table.SetColumnWidth(1, 100)
    table.SetColumnWidth(2, 100)
    table.SetColumnWidth(3, 300)
    split := container.NewHSplit(makeLeftSidebar(), table)
    split.Offset = 0.2
    return container.NewMax(split)
}

问题现象

  • 窗口首次显示时,表格无数据(初始状态:表格所有单元格为空,无交易数据展示)
  • 点击任意单元格后,数据会正常加载并填充到对应位置

调试结论

NewTable的create函数在UI初始化阶段未被调用,仅在用户点击单元格后才触发执行。

更新说明

此问题为Fyne框架的已知Bug,对应项目仓库中的Issue #3198和#3034。

内容的提问来源于stack exchange,提问作者Paul Waldo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 15:45:30