首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从GXT 2.2.3迁移到GXT 3.0.1

如何从GXT 2.2.3迁移到GXT 3.0.1
EN

Stack Overflow用户
提问于 2014-04-12 01:45:46
回答 2查看 547关注 0票数 1

我使用GXT2.2.3创建了EditorGrid,所需的每一件事都是over.But,我需要根据一个单元格中的值禁用和启用一些单元格。但是我找到了不适合我的解决方案,我在Sencha,coderanch和其他一些论坛上问过,但我还是没有找到解决方案。

现在,我决定将其迁移到GXT3.0.1。

我需要一个EditableGrid,需要根据另一个Cell.Please中的值禁用和启用单元格编辑,建议在GXT3.0.1中哪个网格适合这样做,以及如何迁移到GXT2.2.3到GXT3.0.1。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-16 11:26:39

我只是通过使用CSS来解决这个问题。相反,考虑禁用和启用单元格,我只是隐藏和显示使用CSS的单元格。下面是我的代码,它可以帮助我达到这个要求。

代码语言:javascript
复制
 GridCellRenderer<AttendanceCaseCreationModel> checkinRenderer=new GridCellRenderer<AttendanceCaseCreationModel>() {

        @Override
        public Object render(AttendanceCaseCreationModel model, String property,
                ColumnData config, int rowIndex, int colIndex,
                ListStore<AttendanceCaseCreationModel> store,
                Grid<AttendanceCaseCreationModel> grid) {

            String color="pink";
            if(eventcombo.getValue()!=null){


                if(eventcombo.getRawValue().equalsIgnoreCase("Forgot To Checkin") || 
                        eventcombo.getRawValue().equalsIgnoreCase("Mark/Modify Attendance")){
                    color="pink";
                }
                else{

                    config.style=config.style+ ";visibility: hidden;";
                }

            }

            config.style=config.style+ ";background-color:" + color  + ";";
            config.style=config.style+ ";display: block;";
            Object value = model.get(property);
            return value;

        }
    };
票数 0
EN

Stack Overflow用户

发布于 2014-04-12 10:47:07

我不使用gxt 2.x.x。我的朋友试着从2迁移到3,他使用2和3并行。因此,他开始用gxt3构建一个新页面,因为如果将它们混合在一起,布局可能会遇到很大的问题!如果您想使用gxt3,您应该这样做:

代码语言:javascript
复制
//Create grid
Grid<Plant> grid = new Grid(...);
//Create editable grid
GridEditing<Plant> editing = new GridInlineEditing<Plant>(editableGrid);

//add first editing column
TextField watchField = new TextField();
TextField targerField = new TextField();

watchField.addChangeHandler(new ChangeHandler() {
   @Override
   public void onChange(ChangeEvent event) {
      if(smtng) targerField.disable();
      else targetField.enable();
   }
}); 
editing.addEditor(cc1, watchField);
editing.addEditor(cc2, targetField);

所以我认为这对你有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23025115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档