PDA

View Full Version : editorGridのtab enter禁止



ak_ext
2 Aug 2009, 7:11 PM
win環境でext2.2.1で
EditorGridPanelでタブやエンターを押された時に、
編集位置を変更させたくないのですが、

イベント自体は書き記述でキャッチできました

editor : new fm.TextField({
allowBlank: true,
listeners: {
render: function(c) {
c.getEl().on({
keypress: onKeypress,
keydown: onKeypress,
scope: c
});
   }
}
})

ただ処理で
// キーイベント
function onKeypress (e) {
var k = e.getKey();
if((k == e.TAB) || (k == e.ENTER)) {
e.stopEvent();
}
}
とやったのですが、TABやENTERが普通に効いてしまいました。
制御する方法をご存知の方がいたらご教授頂けないでしょうか。

ygl
2 Nov 2009, 5:31 AM
http://www.extjs.com/forum/showthread.php?t=4888
このリンクは参考になると思います。



var grid = new Ext.grid.EditorGridPanel({...})
var sm = grid.getSelectionModel();
sm.onEditorKey=function(field, e){
var k = e.getKey(), newCell, g = this.grid, ed = g.activeEditor;
var shift = e.shiftKey;
if(k == e.TAB){
e.stopEvent();
...
}else if(k == e.ENTER){
e.stopEvent();
...
}else if(k == e.ESC){
ed.cancelEdit();
...
}
...
};