You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Eclipse Scout中使用bsi-software的TableSmartField组件?

Eclipse Scout 23.2.15 用 TableSmartField 替代 ContentAssistFieldTable 的实现步骤

1. 添加Maven依赖

直接在项目的pom.xml中添加BSI Scout JS Widgets的依赖,版本要和你的Scout版本(23.2.15)保持一致:

<dependency>
  <groupId>com.bsiag.scout.rt.ui.html</groupId>
  <artifactId>scout-jswidgets</artifactId>
  <version>23.2.15</version>
</dependency>

同步Maven后,相关前端资源会自动引入,不需要手动操作node_modules。

2. 直接使用TableSmartField,无需自定义模板类

不需要自行创建模板类,直接在表单或页面中实例化TableSmartField并配置即可。示例代码如下:

public class MyTableSmartField extends TableSmartField<MyEntity> {

  @Override
  protected void execInitField() {
    super.execInitField();
    // 配置表格列
    addColumn(new StringColumn() {
      @Override
      protected String getConfiguredHeaderText() {
        return "名称";
      }

      @Override
      protected Class<?> getConfiguredDataType() {
        return String.class;
      }

      @Override
      protected Object execGetValueFromRow(MyEntity row) {
        return row.getName();
      }
    });

    addColumn(new IntegerColumn() {
      @Override
      protected String getConfiguredHeaderText() {
        return "编号";
      }

      @Override
      protected Class<?> getConfiguredDataType() {
        return Integer.class;
      }

      @Override
      protected Object execGetValueFromRow(MyEntity row) {
        return row.getId();
      }
    });

    // 设置数据源
    setLookupCall(new MyEntityLookupCall());
  }
}

功能说明(参考原文档翻译)

TableSmartField是SmartField的增强组件,专为在下拉面板中展示多列数据设计,完美替代已移除的ContentAssistFieldTable。它支持:

  • 自定义表格列的显示、排序、过滤规则
  • 与Scout现有数据绑定、Lookup机制无缝兼容
  • 保留SmartField核心交互逻辑的同时,扩展多信息展示能力

内容的提问来源于stack exchange,提问作者FelixFeuerdorn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 09:24:57