【问题标题】:How to work with GXT Grid?如何使用 GXT Grid?
【发布时间】:2012-01-13 19:12:16
【问题描述】:

我有一个带有字段的 DTO 对象:

public class EmpDTO extends BaseModel implements java.io.Serializable {
    private short empno;
    private EmpDTO emp;
    private DeptDTO dept;
    private String ename;
    private String job;

我尝试在网格中输出这个类:

List<ColumnConfig> configs = new ArrayList<ColumnConfig>();
ColumnConfig clmncnfgEname = new ColumnConfig("ename", "ename", 150);
configs.add(clmncnfgEname);
ListStore<EmpDTO> store = new ListStore<EmpDTO>();
EmpDTO empDTOtmp = new EmpDTO();
empDTOtmp.setEname("Name");
store.add(empDTOtmp);
Grid<EmpDTO> grid = new Grid<EmpDTO>(store, new ColumnModel(configs));
mainContentPanel.add(grid);

但我看到没有错误的空网格。如何解决这个问题?

【问题讨论】:

    标签: java grid gxt


    【解决方案1】:

    你必须使用 BaseModel 吗?与其扩展 BaseModel 为什么不实现 BeanModelTag?

    public class EmpDTO implements BeanModelTag {
    

    否则,请确保 setEname 看起来像这样:

    public void setEname(String ename) {
      set("ename",ename);
    }
    

    getEname 看起来像这样:

    public String getEname() {
       return (String)get("ename");
    }
    

    【讨论】:

    • 是的,我确实使用 BaseModel 并实现了可序列化。我的 getter 和 setter 如下所示: public String getEname() { return this.ename; } public void setEname(String ename) { this.ename = ename; }
    • 您将不得不修改您的 getter 和 setter。如果您将其用作基本模型,则需要执行这些调用来设置字符串属性。见这里:http://www.sencha.com/forum/showthread.php?65999-How-to-use-BaseModel-and-BaseModelData
    【解决方案2】:

    通过此链接...我认为您可能错过了设置网格的一些关键步骤。 http://zawoad.blogspot.com/2009/08/how-to-create-simple-grid-using-gxtext.html

    它通过简单的步骤展示了如何创建基于 GXT 的网格,并帮助了我很多。 我个人也曾在某些场合遇到过这个问题。确保您的 DTO 字段已正确映射到 Grid 列配置。这可能是问题所在。

    我建议您仔细阅读上述帖子并交叉检查您的网格实现。

    【讨论】:

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