키보드의 키다운(keyDown) 이벤트를 바인딩해서 제어 할 수 있습니다.
편집 가능 상태일 때 키보드를 누르면 바로 편집 가능 상태로 진입을 합니다. 이 때 나오는 Input 상태에서 키보드 이벤트는 발생하지 않습니다.
즉, Inputer 상태 전 그리드 자체 키보드 이벤트에만 반응합니다.
사용자가 누르는 keyCode 를 보고 기본 행위를 안하고 개발자가 원하는 행위를 할 수 있습니다.
데모는 엔터키를 누른 경우 기본행위를 안하고 alert 을 찍도록 했습니다. (Enter 의 기본 행위는 다음 행 또는 열 이동임)
이 이벤트를 활용하여 사용자가 원하는 단축키를 새로 작성할 수 있습니다. 예를 들면 F5 리프레쉬 막기, 편집 가능 그리드에서 Insert 키는 행 추가이나 다른 행위를 하도록 정의 하거나 Insert 키를 사용 못하게 정의 할 수 있습니다.
정보 - keyCode : 없음
// keyDown 이벤트 바인딩
AUIGrid.bind(myGridID, "keyDown", function(event) {
const keyCode = event.keyCode;
// 정보 출력
console.log( "keyCode : " + event.keyCode );
if (keyCode === 116) { // F5 키
return false; // F5 키 리프레쉬 기본 행위 안함
}
if (keyCode === 13) { // 엔터 키
const selectedItems = AUIGrid.getSelectedItems(event.pid);
alert("엔터 키 누름 : " + selectedItems[0].value);
return false; // 엔터 키의 기본 행위 안함.
}
return true; // 기본 행위 유지
});