Q&A

  • 폼이 완전히 보여진 후 자동으로 함수 실행하기
제가 자동으로 함수를 실행을 하기 위해서 form의 create나 active 이벤트에..
함수를 써 놓았습니다.
근데... 실행을 해 보니깐.. 폼이 제대로 보이기도 전에 그 함수가 실행이 되더군요..

제가 원하는 상태는...
폼이 완전히 다 보이고 난 후 함수가 실행되는 것입니다.
다른 이벤트에 써봐도 대부분 폼이 보이기도 전에 함수 실행이 되네요....

제가 이벤트를 잘 모르는건지... ㅠ.ㅠ 어떻게 해야 하는건지..

델고수님들의 친절한 답변 기다리겠습니다.
4  COMMENTS
  • Profile
    이재봉 2002.04.26 03:20
    Timer 를 사용하시면 될꺼여요.

    form 생성시 Timer1.enable := True로 해주시고,,,

      if (Timer1.Tag = 0) and (Timer1.enabled) then  
      begin
        // 관련 함수 호출
        Timer1.Enabled := False;
      end
      else
      Timer1.Tag := Timer1.Tag - 1;

    원하는 답변이신지 . 그럼 이만 총총총.....
  • Profile
    까치 2002.04.24 20:14
    * WM_USER 과 119(임의의 명령코드) 를 이용하면 되유~~


    procedure TMainForm.FormCreate(Sender: TObject);
    begin
      inherited;

      PostMessage( handle, WM_USER, 119, 0 );
    end;


    procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;  var Handled: Boolean);
    {  tagMSG = packed record
        hwnd: HWND;
        message: UINT;
        wParam: WPARAM;
        lParam: LPARAM;
        time: DWORD;
        pt: TPoint;
      end;
    }
    var
      ss: string;
    begin
      inherited;
      if Msg.message=WM_USER then
        if Msg.wParam=119 then begin
          showmessage('asdfadf');
        end;
    end;

    그람~~ 즐프하세유~~ ^^*


  • Profile
    최보&#46 2002.04.25 00:27
    말씀 하신 대로 코드를 써 놓았는데... 함수가 실행이 안되여..
    ShowMessage 함수도 실행이 안되던데...
    뭐가 문제가 있는지 모르겠어요...
    코딩은 그냥 간단한 폼에 가르쳐 주신대로만 써 놓았는데...
  • Profile
    까치 2002.04.26 06:02
    글세요~~ 전 잘되는디유~~

    델파이 6 이구유...

    자세히 알구싶으시면 메일주세유~~