Q&A

  • 버튼을 클릭시 마다 로그인을 한 다음에 그 버튼 실행을 시키고 싶은데
질문이 있습니다.
로그인 창을 하나 만들어서 버튼을 클릭시 마다 로그인을 한 다음에 그 버튼 실행에 대한
행동을 하게 하고픈데요
버튼이 여러개이고 로그인창은 하나만 만들어서 사용하고픈데..
그럴려면 로그인창을 만들어서 어떻게 각각의 버튼에 정의해 줘야하는지 몰라서요..
로그인창은 단순하게 아이디와 비밀번호만 입력하구요..
클릭버튼 누르고 로그인 했을때 로그인 '취소'를 누르면 아무 행동두 안하게 하는거져..
로그인창 하나를 여러 클릭 버튼에 어케 연결해서 사용해야할지..
그냥 LogInFrm.ShowModal; 해서 해줬더니
'취소' 눌렀을때에두 버튼클릭했을때 취하는 행동을 해주더라구요.. 그럼 안돼는데 말이져..
자세히 알려주세요..

그럼이만.. 즐거운 하루 보내세요
1  COMMENTS
  • Profile
    한원희 2002.08.09 20:18

    버튼에 보면 ModalResult 라는 속성이 있습니다.
    확인 버튼에는 mrOk를 주고, 최소 버튼에는 mrCancel을 주죠.
    그럼, 대화상자를 호출하는 곳에서 어떤 버튼을 눌렸는지 알 수 있도록 값을 받아서 처리합니다.

      if LoginFrm.ShowModal=mrOK then
          // 로그인시의 처리...

    이런식으로 처리하시면 되겠습니다.

    그리고, 각 버튼의 이벤트 핸들러를 모두 작성하거나, 하나의 이벤트 핸들러를 만들고,
    각 버튼의 tag 속성을 독립적으로 입력해 놓은 후에, 버튼의 이벤트 핸들러에서
    case문으로 버튼의 tag 속성을 조사해서 어떤 버튼이 눌렸는지 알아낸후,
    해당 버튼에 대한 동작을 시켜 주시면 돼겠죠...

    if LoginFrm.ShowModal=mrOK then
    begin
      case TButton(Sender).tag of
        1: // 1번 버튼이 눌렸을 때...
        2: // 2번 버튼이 눌렸을 때...
       ...
      end;
    end;

    이런 식이겠죵?