Java 从选定的单元格列表项获取信息

Java 从选定的单元格列表项获取信息,java,gwt,Java,Gwt,我正在尝试从单元列表中提取modelID。但是我找不到任何方法来这样做。此时,我将数据放入一个列表(这里是ModelID),然后将该列表发送到cellList。我想它在当前状态下工作,因为窗口警报框显示我放入列表的所有项目。但是我想从单元格列表中选择的项目中提取ModelID。这可能吗?如果是,如何实现 List<String> newData = new ArrayList<String>(); for (ModelInfo modelInfo

我正在尝试从单元列表中提取modelID。但是我找不到任何方法来这样做。此时,我将数据放入一个列表(这里是ModelID),然后将该列表发送到cellList。我想它在当前状态下工作,因为窗口警报框显示我放入列表的所有项目。但是我想从单元格列表中选择的项目中提取ModelID。这可能吗?如果是,如何实现

List<String> newData = new ArrayList<String>();
            for (ModelInfo modelInfo : getModelInfoList())
            {
                int modelID = modelInfo.getModelID();
                int modelCreator = modelInfo.getModelCreator();
                String modelName = modelInfo.getModelName();
                String modelCreationDate = modelInfo.getModelCreationDate();
                newData.add("ModelID:" + modelID + "Creator: " + modelCreator + " Diagram name: " + modelName + " Diagram creation date " + modelCreationDate);
            }
List newData=newarraylist();
对于(ModelInfo ModelInfo:getModelInfoList())
{
int modelID=modelInfo.getModelID();
int modelCreator=modelInfo.getModelCreator();
字符串modelName=modelInfo.getModelName();
字符串modelCreationDate=modelInfo.getModelCreationDate();
添加(“模型ID:+ModelID+”创建者:“+modelCreator+”图表名称:“+modelName+”图表创建日期“+modelCreationDate”);
}
和一个选择处理程序

 // Add a selection model to handle user selection.
    final SingleSelectionModel<String> selectionModel = new SingleSelectionModel<String>();
    cellList.setSelectionModel(selectionModel);

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
      public void onSelectionChange(SelectionChangeEvent event) {
        String selected = selectionModel.getSelectedObject();
        if (selected != null) {
          //Extract MODELID TODO
          Window.alert("You selected: " + selected);
        }
      }
    });
//添加一个选择模型来处理用户选择。
最终SingleSelectionModel selectionModel=新的SingleSelectionModel();
cellList.setSelectionModel(selectionModel);
selectionModel.addSelectionChangeHandler(新的SelectionChangeEvent.Handler(){
选择更改时公共无效(选择更改事件){
选择的字符串=selectionModel.getSelectedObject();
如果(已选择!=null){
//提取MODELID TODO
Window.alert(“您选择:+已选择”);
}
}
});
致以最良好的祝愿,
Kerrai

您的目标是访问在onSelectionChange处理程序之外选择的字符串?当然不是说,我的目标是访问将作为字符串中第一个数字的ModelID。我希望它能以一种好的方式完成,我总是可以用“/”这样的符号结束第一部分,并解析字符串,直到找到这样的符号并以这种方式提取modelID。您应该将
modelnfo
对象的列表传递给
CellList
,而不是
字符串。您可以使用modelInfo.getId()或类似的东西。不过,您需要一个自定义单元格来执行此操作: