私はセル編集のグリッドを持っています。誰かがcelleditorでenterを押すと、extjsは次の行と同じセルでエディタを開く必要があります。 私が知っているのは、このアクションはCellEditingクラスのstartEdit()メソッドです。しかし、CellEditorのリスナーからそのグリッドのCellEditingにアクセスするにはどうすればいいですか?エディタリスナーからCellEditingプラグインを取る
listeners:{
specialkey: function(field, e){
if (e.getKey() == e.ENTER) {
var grid = Ext.getCmp('sheetproductionrestin');
var store = Ext.getCmp('sheetproductionrestin').store;
var selModel = grid.getSelectionModel();
var selectedRecord = selModel.getLastSelected();
var recordIndex = store.indexOf(selectedRecord);
var nextRecord = store.getAt(recordIndex + 1);
selModel.select(nextRecord);
}
}
}
このコードは次の行をフォーカスしますが、編集プラグインにアクセスしてここからStartEditを呼び出すにはどうすればよいですか?
逆を行う方法を知っていますか?編集のためにオンザフライで作成されている実際のフィールドへの参照を取得するには、cellpluginのリスナーの内部で? –