폼에 버튼이나 메뉴에 이벤트를 연결하여 프로그램을 종료할 때는 End 키워드를 사용합니다.
하지만 창에 있는 종료 아이콘을 클릭하여 종료할 때는 자동으로 종료되는데, 이 때 사용자에게 종료를 확인하고 종료를 취소하기 위한 방법이 있는데 Form.FormClosing 이벤트를 활용하는 방법입니다. (아래의 그림에서 처럼 종료 아이콘을 클릭하여 창을 종료할 때 사용자로부터 확인하여 종료를 결정할 수 있습니다.)
FormClosing 이벤트는 폼이 닫히는 동안 발생합니다. 폼이 닫히면 폼이 삭제되고 폼과 관련된 모든 리소스가 해제됩니다. 하지만 이 이벤트를 취소하면 폼은 열린 상태로 남아 있습니다. 폼 닫기를 취소하려면 이벤트 처리기에 전달된 FormClosingEventArgs의 Cancel 속성을 true로 설정하면 됩니다. (폼은 Close()메서드가 호출되면 폼의 리소스가 이미 해제되어 있으몰 show()메서드를 호출하여 폼을 표시할 수 없습니다. )
따라서 ForClosing 이벤트 헨들러를 구현하여 종료를 취소할 수 있습니다.
FormClosing 이벤트의 핸들러를 구현할 때는 전달되는 매개변수를 일치시켜야 합니다.
'VB.NET 2008 > VB - 이벤트' 카테고리의 다른 글
이벤트 처리 - 블로킹을 방지하는 이벤트 선언 (0) | 2011.04.17 |
---|---|
이벤트 처리 - 포커스를 다음 TabIndex 값을 가진 입력 폼으로 옴기기 (0) | 2011.04.17 |
이벤트 처리 - AddHandler 및 RemoveHandler (0) | 2011.04.17 |
이벤트 처리 - 이벤트 추가 및 사용 방법 (0) | 2011.04.17 |
이벤트 처리 - WithEvents 및 Handles 절 (0) | 2011.04.17 |