Q&A

  • 버튼 하나로 두가지 기능을 사용하도록 하려면
하나의 버튼으로 두가지 기능
즉, 버튼을 클릭하면....추가기능과 수정기능이 가능하도록 하는 방법이 있나여..
버튼 클릭 -> 캡션이 '추가'로 바뀌고...추가의 기능이 되게....
또 클릭 -> 캡션이 '수정'으로 바뀌고...수정의 기능이 되게끔....

알려주세여.................................
2  COMMENTS
  • Profile
    한주영 2004.03.27 18:13
    제가 주로 사용하는 방법입니다.

    const InsertState : boolean = true; //초기에 Insert
    var
    ...
    begin
    if InsertState then begin
       InsertState := false;
       Button1.Caption := '수정';
    ...
    end else begin
       InsertState := true;
      Button1.Caption := '추가';
      ...
    end;
    end;



  • Profile
    김길현 2004.03.27 11:30
    안녕하세요.
    간단하게 2두가 방법을 알려두리죠.
      저도 초보지만 제가 쓰는 방법은


    첫번째. flag를 두는 거죠.
      1. 전역변수를 선언합니다.  flag : boolean;
      2. 초기값으로 TRUE 혹은 FALSE 값을 넣어두시구요.
      3. 버튼이 눌렀을 때 if 문으로 체크를 합니다.  
          if flag then  begin
                btn.caption := '수정';
                flag := FALSE; //반대로 옮겨주어야 다음에 다른 기능을 하니깐요
                ..... //입력기능 코드를 넣으시구요.
          end//end of if(flag)
          else begin
           flag := TRUE; //다음번 사용될때 반대로 되어야 하니깐요.
            .....// 수정 기능코드를 넣으시구요.
          end;//end of else(flag)


    두번째 방법은요.  그냥 버튼 캡션체크하시면 됩니다. ^^;;;

    if btn.caption = '입력' then begin
      btn.caption := '수정'; //위와 같은 개념 다음번에 다르게 사용하려면요.
      ....//입력 기능성 코드
    end
    if btn.caption = '수정' then begin
      btn.caption := '입력';
       .... //수정 코드를 넣으시면 됩니다.
    end;

    // 단지 두번째 것의 단점은 스트링으로 비교 하기때문에 공백도 맞추어 주어야 한다는 것이 있습니다.


    평안한 하루되세요.