将 SetRowLabelValue 重写为什么

Override SetRowLabelValue to what

文档指出,如果您正在创建网格,并且想要设置行标签,则必须重写 SetRowLabelValue。很好,没问题,只是你把标签存入的变量名是什么?

def SetRowLabelValue(self, row, label):
    # store where?
    return label

我尝试了 rowLabels(以匹配 col 标签),但这不起作用。变量名是什么?我确定我只是在某处遗漏了它,但我也尝试在内存中查找但无法弄清楚。

很简单的事情,SetRowLabelValue就是让你赋值一个变量存进去。然后您将 GetRowLabelValue 覆盖为 return 您的信息。这必须发生在 GridTableBase 的派生中。所以顺序是:

def SetRowLabelValue(self, row, label):
    self.rowLabels[row] = label
    return label

def GetRowLabelValue(self, row)
    return self.rowLabels[row]

你可以选择任何你喜欢的变量名。该文档有点晦涩难懂,但这可以解决问题。