【问题标题】:Smartgwt selectitem key value issueSmartgwt selectitem键值问题
【发布时间】:2012-05-16 13:33:55
【问题描述】:

我有一个SelectItem,我通过一个Map 填充它,该组合在listgridfield 内,非常好,但是当我选择组合框中的任何项目而不是获取地图的描述或值时将键放在 listgridfield 中。

如何让我设置值而不是键?现在我尝试使用 AddChangeHandler 但没有奏效。

我得到了下一个代码:

final ListGridField measureField = new ListGridField(CdmsConstants.MEASURE_ABB,    CdmsConstants.CMB_MEASURE_TITULO, 100);

final SelectItem measureComboBox = new SelectItem();
measureComboBox.setDefaultToFirstOption(false);
measureComboBox.setName(CdmsConstants.MEASURE_ABB);
measureComboBox.setTitle(CdmsConstants.CMB_MEASURE_TITULO);
measureComboBox.setDefaultValues(CdmsConstants.CMB_DEFAULT_VALUE);
measureComboBox.setType("comboBox");
measureComboBox.setVisible(true);
measureComboBox.setValueMap(result);
measureComboBox.setValidateOnExit(true);

measureField.setEditorType(measureComboBox);

在 measureComboBox 中当我放置变量结果(即 Map)并单击组合的任何项目时,显示在组合框中的值是 linckedhashmap 的键,而不是项目的值...我该如何改变呢?

非常感谢。

【问题讨论】:

  • 我什至不明白你的问题......
  • 我已经编辑了我的问题,非常感谢 4 位您的帮助。
  • 你真的要搞乱ListGrid编辑器吗?为什么不让 2 个对象并排可见并在 SelectItem 中的 selectionChanged 上触发 listgrid 上的添加?

标签: smartgwt listgrid


【解决方案1】:

如果您使用数据源而不是LinkedHashMap,则可以使用SelectItem 实例的setValueField 方法。但在这种情况下,您可以使用 SelectItem 对象的 setValueFormatter 方法。

【讨论】:

    【解决方案2】:

    我有同样/相似的问题,我的解决方案可以在这里看到ListGrid.setEditorCustomizer in SmartGWT 是使用SelectItem 的数据源,然后实现我自己的CellFormatter

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多