Q&A

  • On Error goto문?


비베에서는 On Error goto문이 있습니다만

델파이에서는 어떤식으로 구현하는지 알고 싶습니다.



예를들어 파일을 읽어들일때 파일이 없다거나,

형이 맞지 않아 에라가 발생할때는 에라문을

실행하도록 하고 싶은데요.

1  COMMENTS
  • Profile
    안치봉 1999.06.15 21:07
    디제이 께서 말씀하시기를...

    >

    > 비베에서는 On Error goto문이 있습니다만

    > 델파이에서는 어떤식으로 구현하는지 알고 싶습니다.

    >

    > 예를들어 파일을 읽어들일때 파일이 없다거나,

    > 형이 맞지 않아 에라가 발생할때는 에라문을

    > 실행하도록 하고 싶은데요.



    Each statement in the except part of a try..except block defines code to execute to handle a particular kind of exception. The form of these exception-handling statements is as follows:



    on do ;



    Example



    You can define an exception handler for division by zero to provide a default result:



    function GetAverage(Sum, NumberOfItems: Integer): Integer;

    begin

    try

    Result := Sum div NumberOfItems; { handle the normal case }

    except

    on EDivByZero do Result := 0; { handle the exception only if needed }

    end;

    end;



    Note that this is clearer than having to test for zero every time you call the function. Here's an equivalent function that doesn't take advantage of exceptions:



    function GetAverage(Sum, NumberOfItems: Integer): Integer;

    begin

    if NumberOfItems <> 0 then { always test }

    Result := Sum div NumberOfItems { use normal calculation }

    else Result := 0; { handle exceptional case }

    end;



    The difference between these two functions really defines the difference between programming with exceptions and programming without them. This example is quite simple, but you can imagine a more complex calculation involving hundreds of steps, any one of which could fail if one of dozens of inputs were invalid.

    By using exceptions, you can spell out the "normal" expression of your algorithm, then provide for those exceptional cases when it doesn't apply. Without exceptions, you have to test every single time to make sure you're allowed to proceed with each step in the calculation.





    • 강미라
    • 1999.06.16 00:55
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 구민오
      1999.03.29 08:47
      원도우즈가 시작될때 실행되도록하려고 하거든요... 즉 시작프로그램으로 등록시키려고요... 어떻게 해야...
    • 김우철
      1999.06.16 02:23
      고수는 아니지만, 기냥 써볼랍니다. 날짜에 대한 자료를 처리할수 있는 클래스를 만들어서 윤년계산, 해당...
    • 안치봉
      1999.03.30 01:56
      구민오 wrote: > 원도우즈가 시작될때 실행되도록하려고 하거든요... > 즉 시작프로그램으로 등록시키려...
    • 이호선
    • 1999.03.27 21:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.30 01:59
      이호선 wrote: > 안녕하세요 > 다름이 아니라 대략 Active-X페이지에서 해야된다는 것은 알겠지만 > 단...
    • 김진성
    • 1999.06.16 00:42
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김태균
      1999.06.16 00:49
      김진성 께서 말씀하시기를... > ORACLE에서는 ROWNUM을 이용하여 존재하는 레코드에 대한 > 각각의 번호...
    • 김진성
      1999.06.16 06:22
      김태균 께서 말씀하시기를... > 김진성 께서 말씀하시기를... > > ORACLE에서는 ROWNUM을 이용하여 존재...
    • 김태균
      1999.06.16 18:23
      음..... 테이블을 만들때 포함시키는 것입니다. SQLServer에서 테이블을 생성할 때 순서가 다음과 같...
    • 주선희
    • 1999.03.26 23:55
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.27 01:24
      주선희 wrote: > 답변감사드립니다. > 그런데 보충질문 좀 할께요. > 뒷배경은 배경화면 뿐만이 아니라 ...
    • 최기훈
    • 1999.06.16 00:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최기훈
      1999.06.16 03:05
      최기훈 께서 말씀하시기를... > 안녕하세요. 염치를 불구하고 이렇게 또 메일을 올립니다. > Delphi에서 ...
    • 주선희
    • 1999.03.26 23:55
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.27 01:24
      주선희 wrote: > 답변감사드립니다. > 그런데 보충질문 좀 할께요. > 뒷배경은 배경화면 뿐만이 아니라 ...
    • 장일
    • 1999.06.15 22:58
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이호선
    • 1999.03.26 22:53
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.26 23:25
      이호선 wrote: > 안녕하세요. > 매번 좋은 답변을 주셔서 감사합니다. > 다름이 아니라 내가 제작한 프...
    • 이주흥
    • 1999.06.15 22:55
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      1999.06.16 01:27
      > TrayIcon에서요.. 팝업메뉴를 만드는 방법좀 알려주세요.. > 그러니까 Icon에서 오른쪽 마우스클릭 했을...
    • 주선희
    • 1999.03.26 21:17
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.26 23:19
      주선희 wrote: > 안녕하십니까? > 먼저 유익하고 좋은 페이지 제공해주는데 대해서 감사합니다. > 다름...
    • 디제이
    • 1999.06.15 20:59
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.06.15 21:07
      디제이 께서 말씀하시기를... > > 비베에서는 On Error goto문이 있습니다만 > 델파이에서는 어떤식으...
    • 박종성
    • 1999.06.15 20:50
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이호선
      1999.03.26 22:53
      안녕하세요. 매번 좋은 답변을 주셔서 감사합니다. 다름이 아니라 내가 제작한 프로그램을 WORD나 파워포...
    • 안치봉
      1999.03.26 23:25
      이호선 wrote: > 안녕하세요. > 매번 좋은 답변을 주셔서 감사합니다. > 다름이 아니라 내가 제작한 프...
    • 주선희
    • 1999.03.26 21:17
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김태균
      1999.06.15 20:04
      음.... 조복기님이 말하신대로 바꾸어서 실행했는데요... 그래도 결과는 마찬가지네요. 몇개만 Insert했...
    • 안치봉
      1999.03.26 23:19
      주선희 wrote: > 안녕하십니까? > 먼저 유익하고 좋은 페이지 제공해주는데 대해서 감사합니다. > 다름...
    • 조복기
      1999.06.15 20:58
      김태균 께서 말씀하시기를... > 음.... 조복기님이 말하신대로 바꾸어서 실행했는데요... > 그래도 결과...
    • 조복기
      1999.06.15 21:11
      TString를 사용하는방법은 동일하지만 전 그때 이방법을 안쓰고 sql문장을 memo.line에 넣어두고 sql := ...
    • 이미옥
      1999.06.15 19:55
      간단한 ActiveForm 예제(StringGrid에 값을 뿌려주는 예제)를 만들어서 익스플로러에서 실행하다가 문제가 ...
    • 안치봉
      1999.03.26 20:05
      문보석 wrote: > 안녕하세요... > 얼마전 소켓 컴포넌트를 공부해서 약간이나마 뭔지는 알았습니다... >...
    • 안치봉
      1999.06.15 21:05
      이미옥 께서 말씀하시기를... > 간단한 ActiveForm 예제(StringGrid에 값을 뿌려주는 예제)를 만들어서 익...
    • 안치봉
      1999.03.26 20:05
      문보석 wrote: > 안녕하세요... > 얼마전 소켓 컴포넌트를 공부해서 약간이나마 뭔지는 알았습니다... >...
    • heart
    • 1999.06.15 19:02
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.06.15 19:05
      heart 께서 말씀하시기를... > > > 굴림체에서 0021에 해당하는 문자는 '!'인데 0021이란 입력값으...
    • heart
      1999.06.15 23:53
      안치봉 께서 말씀하시기를... > heart 께서 말씀하시기를... > > > > > > 굴림체에서 0021에 해당...
    • 안치봉
      1999.06.16 00:44
      heart 께서 말씀하시기를... > 안치봉 께서 말씀하시기를... > > heart 께서 말씀하시기를... > > > >...
    • 정태열
    • 1999.03.25 21:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.25 23:35
      정태열 wrote: > 안녕하세요. > 안치봉님의 답변 정말 감사합니다. > 제가 글의 표현력이 부족하여 정확...
    • 최기훈
    • 1999.06.15 18:37
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.06.15 19:03
      procedure Tfrm.ButtonClick(Sender: TObject); var paramName: array[0..20] of TLabel; begin ...
    • 정태열
    • 1999.03.25 21:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.03.25 23:35
      정태열 wrote: > 안녕하세요. > 안치봉님의 답변 정말 감사합니다. > 제가 글의 표현력이 부족하여 정확...
    • 북해
    • 1999.06.15 17:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.06.15 19:02
      북해 께서 말씀하시기를... > 안녕하세요. 동적생성한 버튼 객체를 없애려 하는데요 어떻게 하면 되는지요...