2011-08-19 27 views
9

Tôi đang sử dụng Bảng di động trong GWT.Trong bảng ô đó tôi đang thêm các cột này.Cách ẩn cột trong Bảng di động GWT?

TextColumn<Document> idColumn = new TextColumn<Document>() { 
     @Override 
     public String getValue(Document object) { 
      return Long.toString(object.getId()); 
     } 
    }; 
    TextColumn<Document> refColumn = new TextColumn<Document>() { 
     @Override 
     public String getValue(Document object) { 
      return object.getReferenceNumber(); 
     } 
    }; 
    /* 
    * DateCell dateCell = new DateCell(); Column<Contact, Date> dateColumn 
    * = new Column<Contact, Date>(dateCell) { 
    * 
    * @Override public Date getValue(Contact object) { return 
    * object.birthday; } }; 
    */ 
    TextColumn<Document> nameColumn = new TextColumn<Document>() { 
     @Override 
     public String getValue(Document object) { 
      return object.getDocumentName(); 
     } 
    }; 
      table = new CellTable<T>(); 
    table.addColumn(idColumn, "Id"); 
    table.addColumn(refColumn, "Reference Number"); 
    table.addColumn(nameColumn, "Name"); 
} 

Bây giờ tôi có một số truy vấn: Làm cách nào để ẩn cột id? Khi nhấp vào hàng, tôi có thể nhận hàng từ hàng đã chọn như thế nào? Xin hãy giúp tôi. Cảm ơn trước.

Trả lời

14

Bạn cũng có thể thử sử dụng bố cục cố định cho ô và đặt độ rộng của cột cụ thể mà bạn muốn ẩn thành 0px. Tôi đã sử dụng cách tiếp cận khác.

Trong trường hợp của tôi, tôi có một ô để hiển thị cột kiểm tra ngay sau khi tôi nhấn một nút (đặt ô trong chế độ chỉnh sửa). Tôi làm điều này bằng cách tạo ra một CheckBoxColumn và chèn và loại bỏ nó khi tôi nhấn vào nút. Có vẻ giống như vậy:

@Override 
public void insertCheckBoxColumn(Column<Object,Boolean> column) { 
    if (cellTable.getColumnIndex(column) == -1) { 
     cellTable.addColumn(column,""); 
     cellTable.setColumnWidth(column,50, Unit.PX); 
    } 
} 

@Override 
public void removeCheckBoxColumn(Column<Object, Boolean> column) { 
    int index = cellTable.getColumnIndex(column); 
    if (index != -1) 
     cellTable.removeColumn(index); 
} 

Tuy nhiên lưu ý rằng bạn có thể chạy vào số issue trên google chrome này.

+0

Làm cách nào để quản lý vấn đề đặt hàng cột khi chèn, xóa cột muptiple, vui lòng đọc câu hỏi này http://stackoverflow.com/questions/21630708/how-to-fix-the-column-ordering-issue-when- chèn-và-xóa-cột-trong-gwt – Kiti

Các vấn đề liên quan