drjltlm156790 2018-05-05 17:49
浏览 108
已采纳

WxGo网格单元渲染器

I'm obviously missing some basic understanding of either Go or Wx Widgets.

I'm trying to create a very basic table with checkboxes in the first column.

table := wx.NewGrid(w, wx.ID_ANY)
table.CreateGrid(4, 2)
table.SetCellEditor(0, 0, wx.SwigIsGridCellBoolRenderer{})

That code gives me this error:

invalid type for composite literal: wx.SwigIsGridCellBoolRenderer

I know I also have to set the editor. But I'm not even that far. The more detailed the answer, the better. Thank you!

  • 写回答

1条回答

  • duanpei4455 2018-05-10 14:54
    关注

    The error hints you are using a composite literal, which can be used to create values of struts, slices, arrays, maps or derivatives of these.

    This:

    wx.SwigIsGridCellBoolRenderer{}
    

    Would be an empty composite literal of the type wx.SwigIsGridCellBoolRenderer, but that type is nether of the types you may use with a composite literal. It is an interface type:

    type SwigIsGridCellBoolRenderer interface {
        SwigGetGridCellBoolRenderer() GridCellBoolRenderer
    }
    

    wx.NewGrid() returns a type of wx.Grid which is an interface with a method:

    SetCellEditor(arg2 int, arg3 int, arg4 SwigIsGridCellEditor)
    

    So you have to pass a value to it that satisfies / implements the wx.SwigIsGridCellEditor interface.

    This interface has a single method:

    type SwigIsGridCellEditor interface {
        SwigGetGridCellEditor() GridCellEditor
    }
    

    So any type that has such SwigGetGridCellEditor() method may be used here. Such types are:

    • wx.SwigClassGridCellTextEditor
    • wx.SwigClassGridCellAutoWrapStringEditor
    • wx.SwigClassGridCellBoolEditor
    • wx.SwigClassGridCellChoiceEditor
    • wx.SwigClassGridCellEnumEditor
    • etc.

    So create an instance of one of the above, that you can pass to table.SetCellEditor().

    For example:

    editor := wx.NewGridCellTextEditor()
    table.SetCellEditor(0, 0, editor)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)