flex 에서 이벤트.preventDefault()방법 으로 이벤트 의 기본 행동 을 취소 합 니 다.

먼저 예 를 들 어
 
<mx:DataGrid id= "songList" dataProvider= "{songDB}" width= "100%" height= "100%" editable= "true"
itemEditEnd="itemEditEndHandler(event)" itemEditBeginning= "itemEditBeginningHandler(event)"
>
그 중에서 item EditBeginning Handler 는 이렇게 제어 할 수 있 습 니 다
 
private function itemEditBeginningHandler(event:DataGridEvent): void
{
if (event.columnIndex== 0 || event.columnIndex== 3 ){
event.preventDefault();
}
}
datagrid 의 첫 번 째 와 네 번 째 항목 을 클릭 하면 item Edit 사건 이 작 동 하지 않 습 니 다.다음은 이벤트.preventDefault()설명 입 니 다.이벤트 의 기본 행 위 를 취소 할 수 있다 면 이 행 위 를 취소 합 니 다.많은 사건 들 이 기본적으로 실행 되 는 관련 행 위 를 가지 고 있다.예 를 들 어 사용자 가 텍스트 필드 에 문 자 를 입력 하면 기본 동작 은 텍스트 필드 에 이 문 자 를 표시 하 는 것 입 니 다.TextEvent.TEXT 를 취소 할 수 있 기 때문에INPUT 이벤트 의 기본 동작 이기 때문에 preventDefault()방법 으로 이 문 자 를 표시 하지 않도록 할 수 있 습 니 다.취소 할 수 없 는 행동 의 예제 중 하 나 는 Event.REMOVED 이벤트 와 연 결 된 기본 행동 입 니 다.Flash Player 가 디 스 플레이 목록 에서 디 스 플레이 대상 을 삭제 하면 이 사건 이 생 성 됩 니 다.기본 행동(요소 삭제)을 취소 할 수 없 기 때문에 preventDefault()방법 은 기본 행동 이 잘못 되 었 습 니 다.이벤트.cancelable 속성 을 사용 하여 특정 이벤트 와 연 결 된 기본 행동 을 방지 할 수 있 는 지 확인 할 수 있 습 니 다.Event.cancelable 의 값 이 true 라면 preventDefault()를 사용 하여 이 벤트 를 취소 할 수 있 습 니 다.그렇지 않 으 면 preventDefault()가 잘못 되 었 습 니 다.

좋은 웹페이지 즐겨찾기