: 1번은 제가 아래와 같이 소스를 짯는데 오류가 생기더라구요 어디가 잘못됬는지 지적 바랍니다.
:
: procedure Tpart1.ButtonClick(Answer : Char);
: begin
: CheckBox1.Checked := true;
: IF Table1.Fields.Fields[2].Text = Answer then Answer_O();
: Else IF Table1.Fields.Fields[2].Text <> Answer then Answer_X(); // 이부분...오류
:
: end;
아래 안영제님 답변처럼
IF ELSE 문이 잘못 되었습니다.
IF ELSE 문은 기본적인 형태는
IF A = B THEN
BEGIN
END ELSE
IF A > B THEN
BEGIN
END ELSE
BEGIN
END;
위와 같습니다. 즉, 마지막 end; 이외에는 ; 세미콜론이 필요 없습니다.
begin end 를 생략하는 경우는 ; 세미콜론으로 구분할 필요가 없는 단일 명령줄일때 입니다.
코딩 하신것과 같이 단일 명령줄일때 begin end를 생략할수 있습니다. 대신 ; 세미콜론도 없어야 겠죠.
한번 IF 문쪽 Help를 읽어 보시는게 좋겠습니다.
그리고 = 일때와 <> 일때 두가지로만 나뉜다면 위와 같이 두번 if를 비교 하실 필요 없습니다.
간단히
IF Table1.Fields.Fields[2].Text = Answer then
Answer_O()
Else
Answer_X();
이렇게만 쓰주시면 됩니다. 같을경우는 Answer_O() 를 실행하고 아니면 Answer_X() 를 실행하라 라고 ^^*
|