1
GXT EditorGrid提供了一種設置列的編輯器類型的機制。GXT EditorGrid:在單元格基礎上選擇單元格編輯器類型
有沒有辦法在單元格基礎上定義編輯器類型?
對於那些好奇的人們:
我需要創建一個換位表;列成爲行,行成爲列。既然如此,一列(從普通表格的角度來看)將會有各種編輯器類型,其中一行將具有相同的編輯器類型。
GXT EditorGrid提供了一種設置列的編輯器類型的機制。GXT EditorGrid:在單元格基礎上選擇單元格編輯器類型
有沒有辦法在單元格基礎上定義編輯器類型?
對於那些好奇的人們:
我需要創建一個換位表;列成爲行,行成爲列。既然如此,一列(從普通表格的角度來看)將會有各種編輯器類型,其中一行將具有相同的編輯器類型。
基本上,你必須處理BeforeEdit事件並設置編輯器。這裏有一個基類,您可以從中實現您的網格:
public abstract class AnyEditorGrid<T extends ModelData> extends EditorGrid<T> {
public AnyEditorGrid(final ListStore<T> listStore, final ColumnModel columnModel) {
super(listStore, columnModel);
addListener(Events.BeforeEdit, new Listener<GridEvent<T>>() {
@Override
public void handleEvent(final GridEvent<T> be) {
final CellEditor editor = getEditor(be.getRowIndex(), be.getColIndex(), be.getModel());
if (editor != null) {
getColumnModel().setEditor(be.getColIndex(), editor);
} else {
be.setCancelled(true);
}
}
});
}
protected abstract CellEditor getEditor(int rowIndex, int colIndex, T model);
}
工作。謝謝。 =) – bungrudi