错误提示您正在使用 composite literal,它可用于创建 struts、切片、数组、映射或这些的派生值。
这个:
wx.SwigIsGridCellBoolRenderer{}
将是 wx.SwigIsGridCellBoolRenderer 类型的空复合文字,但该类型不是您可以与复合文字一起使用的类型。它是一个接口类型:
type SwigIsGridCellBoolRenderer interface {
SwigGetGridCellBoolRenderer() GridCellBoolRenderer
}
wx.NewGrid() 返回一个wx.Grid 类型,它是一个带有方法的接口:
SetCellEditor(arg2 int, arg3 int, arg4 SwigIsGridCellEditor)
所以你必须向它传递一个满足/实现wx.SwigIsGridCellEditor 接口的值。
这个接口只有一个方法:
type SwigIsGridCellEditor interface {
SwigGetGridCellEditor() GridCellEditor
}
因此,任何具有这种SwigGetGridCellEditor() 方法的类型都可以在这里使用。这些类型是:
wx.SwigClassGridCellTextEditor
wx.SwigClassGridCellAutoWrapStringEditor
wx.SwigClassGridCellBoolEditor
wx.SwigClassGridCellChoiceEditor
wx.SwigClassGridCellEnumEditor
- 等
因此,创建上述其中一项的实例,您可以将其传递给table.SetCellEditor()。
例如:
editor := wx.NewGridCellTextEditor()
table.SetCellEditor(0, 0, editor)