类似于TableEditor中的enter_set行为

时间:2014-01-07 20:57:23

标签: enthought traitsui

我正在使用wx后端构建TableEditor。该表是DatasetElementpanel_name个对象公开的dataset_name个对象的列表。此外,与手头的问题无关,无论选择哪一行,还会使用edit_view属性在右侧显示该特定数据集元素的更详细视图(此功能使TableEditor成为可取的,而不是其他视图样式)。

我正在收听'panel_name'属性,并且每当它发生变化时,例如更新两个词典,其面板名称用于快速查找有关面板的相关数据。每当在显示中键入新字符时,这都会更新,因此我有两个字典不断删除关联{'incomplete_wor':<DataObject>}并在键入新名称时反复用{'incomplete_word':<DataObject>}替换它。

这不是一个严重的问题,但有没有办法让TableEditor在用户点击输入或移动表格选择时更新其列表成员,就像TextEditor中的enter_set关键字一样?

1 个答案:

答案 0 :(得分:1)

如果您使用ObjectColumn来显示/设置值,则可以为该列指定editor。通过将编辑器指定为TextEditor,您可以根据需要调整enter_set参数。以下是仅更新 Enter 键按下的值的示例。

myTableEditor = TableEditor(columns=[
   ObjectColumn(name='panel_name', label='Panel Name'),
   ObjectColumn(name='dataset_name', label='Dataset Name', 
                editor=TextEditor(enter_set = True,
                                  auto_set  = False))
                                     ])

希望这有帮助。