Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[3969] [답변] KOSHARK/ try ~ except문에 좀더 자세한 설명을
zpdspf1 [ ] 1369 읽음    1998-08-12 12:37
  안녕하세요. 천리안 프로그래머 포럼 델파이 담당자 댁스터(강범석)입니다.

  결론적으로 올리신 소스는 아주 약간만 손보면 아주 잘 작동합니다.

  천방님께서 말씀하신대로 예외가 발생하는 것을 미리 검사를 하는 것으로 방지하

  는 것도 좋은 방법이지만, 미리 검사를 하지 않더라도 예외처리기가 알아서 해주

  기 때문에 걱정하지 않아도 됩니다.

  try
   findkey([edit1.text]); //integer롤 정의된 table의 field를 검색

   except on EDatabaseError  do
   begin                              // begin을 추가하셔야 합니다.
     showmessage('숫자를 입력하세요');
     edit1.clear;
     edit1.setfocus;
   end;                                // except문의 begin의 end
   end;                                // try...except 문의 end

  요렇게 하시면 edit1에서 숫자가 아닌 문자가 들어오면 말씀하신대로

  EDatabaseError라는 예외가 발생하죠... 그럼 위 소스에서 begin ~ end사이의

  문장을 자동으로 실행해 줍니다.

  단, IDE상에서 실행했을 때는 예외가 났다는 것이 델파이 IDE상에 메지시 박스로

  보여지지만, 실제 프로젝트를 컴파일하여 만들어진 exe파일을 실행하여 똑같이

  문자를 넣어서 예외를 발생시켜 보세요. 그럼 예외가 났다는 이상한(?) 메시지

  박스가 안 뜨고 위 예외처리 구문이 정확하게 동작 할껍니다.

  그럼 참고하세요.

         ┏━━━┳━┳━┳━━━┳━┳━┳━━━┳━━━┳━━━┓
         ┃      ┃  ┃  ┃      ┃  ┃  ┃      ┃      ┃  __  ┃
         ┃      ┃      ┃    ━┫      ┃      ┃    ━┫      ┃
         ┃      ┃      ┃      ┣━  ━┫   :  ┃      ┃    ━┫
         ┃      ┃      ┃    ━┫      ┃      ┃    ━┫      ┃
         ┗┓  ┏┫  ┃  ┃      ┃  ┃  ┃      ┃      ┃  ┃  ┃
           ┗━┛┗━┻━┻━━━┻━┻━┻━━━┻━━━┻━┻━┛



+ -

관련 글 리스트
3969 [답변] KOSHARK/ try ~ except문에 좀더 자세한 설명을 zpdspf1 1369 1998/08/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.