【问题标题】:Adding multiple buttons || cells in a cell in GXT 3.0 Grid添加多个按钮 || GXT 3.0 网格中的单元格中的单元格
【发布时间】:2013-09-17 08:07:55
【问题描述】:

我正在使用 GXT 3.0,我想在其中开发一个网格表。在表格中,一个单元格被分配为具有多个作业,如保存、删除、更新。所以我需要开发一个网格表,它在一个单元格中有多个按钮。为了形象化我分享这张图片的问题:

我试图通过

添加一个单元格
ColumnConfig.setCell() 

方法,成功了。但我必须添加多个按钮或单元格来处理事件。简而言之,我需要一个 Cell 中的多个 Cell。

  • 我知道有一个名为 ColumnConfig.setWidget() 的方法,但它没有帮助。它只是将工具栏(或任何小部件元素)添加到顶部(标题部分)。
  • 记住我使用的是 GXT 3.0

感谢您的帮助。

【问题讨论】:

    标签: java gwt grid cell gxt


    【解决方案1】:

    您必须使用 CompositeCell :

    private CompositeCell<ObjectRow> createCompositeCell(){
    
    HasCell<ObjectRow, String> button1 = new HasCell<ObjectRow, String>() {
    
      public Cell<String> getCell() {
        return new ButtonCell();
      }
    
      public FieldUpdater<ObjectRow, String> getFieldUpdater() {
        return null;
      }
    
      public String getValue(ObjectRow object) {
        return "Button 1";
      }};
    
      HasCell<ObjectRow, String> button2 = new HasCell<ObjectRow,String>(){
    
        public Cell<String> getCell() {
          return new ButtonCell();
        }
    
        public FieldUpdater<ObjectRow, String> getFieldUpdater() {
          return null;
        }
    
        public String getValue(ObjectRow object) {
          return "Button 2";
        }
      };
    
      List<HasCell<ObjectRow, ?>> cells = new ArrayList<HasCell<ObjectRow, ?>>();
      cells.add(buton1);
      cells.add(button2);
    
      CompositeCell<ObjectRow> compositeCell = new CompositeCell<ObjectRow>(cells);
    
      return compositeCell;
    }
    

    您可以为手柄按钮点击设置不同的 FieldUpdater。

    【讨论】:

    • 你能解释一下如何处理不同的按钮点击吗?
    • ButtonCell 将在用户单击时调用 FieldUpdater。只需创建 FieldUpdater 并通过 getFieldUpdater() 方法返回即可。
    猜你喜欢
    • 2011-12-25
    • 1970-01-01
    • 1970-01-01
    • 2014-11-28
    • 2019-09-03
    • 2021-12-30
    • 1970-01-01
    • 2013-05-10
    • 2020-10-20
    相关资源
    最近更新 更多