Q&A

  • 델파이기초질문.....
아래코드를보면 begin,end;이2개있는데 어떠한용도인가요???

첵에서는 프로시저에 begin으로시작해서end; 로끝난다고 써있는데요???

아시는분설명좀부탁드려도 될까요???



procedure TForm1.Button1Click(Sender: TObject);

begin



if Animate1.Active = True then

begin

Animate1.Active := False;

Button1.Caption := '시작';

end

else

begin

Animate1.Active := True;

Button1.Caption := '끝';

end;

end;

1  COMMENTS
  • Profile
    임형호 2000.03.07 18:46
    이상주 wrote:

    > 아래코드를보면 begin,end;이2개있는데 어떠한용도인가요???

    > 첵에서는 프로시저에 begin으로시작해서end; 로끝난다고 써있는데요???

    > 아시는분설명좀부탁드려도 될까요???

    >

    > procedure TForm1.Button1Click(Sender: TObject);

    > begin

    >

    > if Animate1.Active = True then

    > begin

    > Animate1.Active := False;

    > Button1.Caption := '시작';

    > end

    > else

    > begin

    > Animate1.Active := True;

    > Button1.Caption := '끝';

    > end;

    > end;



    프로시저는 begin ~ end; 로 왜 묶는가 생각해보니 정말 저두 그걸 잘 모르겠군요.

    혹시 그냥 규칙아닐까요? 프로시저별루 구별짓기위한 규칙...정확한것은 모르겠네요.

    그리고 if Animate1.Active = True then 문장다음에 begin ~ end로 묶은것은 복문을 의미하거든요. if문의 형식이



    if 조건 then

    처리할문장

    else

    위의조건이 아닐경우 처리할 문장



    일때 처리할문장이 한문장이 아닐경우에 begin과 end로 묶어주어야됩니다. 위와 같은 경우에는 begin ~ end문을 빼면 바로 에러가 발생할테니 다른 경우를 예를 들어보면



    if 조건 then

    실행할 명령문1

    실행할 명령문2

    실행할 명령문3



    위와같은 경우에 어떤 조건에 해당되면 명령문1,2,3을 모두 실행할 경우에는 then 다음에 begin

    실행할명령문1

    실행할 명령문2

    실행할 명령문3

    end;

    형식으로 써주어야 3문장을 모두 실행하게 됩니다. 그렇지 않을 경우에는 if 조건문에 의해 바로 아래 명령문1만 실행이 되고 나머지2,3은 조건에 상관없이 무조건 실행이되게 되죠.



    너무 기초적인 질문이라서 다른분들께서 답변을 해주시지 않으셔서 제가 몇자 적었습니다.

    질문이 쉽다고해도 하시는분입장에서는 그것이 아닌것 같아서요... 그럼...이만..