Q&A

  • showmessage 자동으로 사라지게 하려면 어케해야하나여??
showmessage 를  한 2초간뜨고 사라지게 하려면
어떻게 하나여 방법좀 알려주세여
아님 다른방법있으면 알려주셔요
2  COMMENTS
  • Profile
    홍성락 2002.08.23 06:29
    hsr////////////////////////////////////////////////////////////
    1.showmessage 사용시는 아무거나 포커스 잡힌걸 닫는거라
    2초 사이에 다른것에 포커스를 줄때는 위험합니다.
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Timer1.Interval := 2000;
      Timer1.Enabled := True;
      ShowMessage('123');
    end;
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
       SendMessage(GetForegroundWindow, WM_CLOSE, 0, 0);
    end;

    2.따라서 델마당 팁에선가 하영재님이 올리신 MessageBox와 MessageBoxTimerProc, SetTimer를 사용한것을 조금 고쳐 올려봅니다
    ......
    ......
    var
      Form1: TForm1;
      procedure MessageBoxTimerProc(hWnd: HWND; uMsg: UINT; idEvent: UINT; Time: DWORD); stdcall;

    implementation

    {$R *.dfm}
    procedure MessageBoxTimerProc(hWnd: HWND; uMsg: UINT; idEvent: UINT; Time: DWORD);
    begin
    PostQuitMessage(0);
    end;

    procedure TForm1.Button1Click(Sender: TObject);
    var
       idTimer: UINT;
       msg: TMSG;
    begin
       idTimer := SetTimer(0, 0, 2000, @MessageBoxTimerProc);
       MessageBox(0, '123', '정보', MB_OK);
       KillTimer(0, idTimer);
       PeekMessage(msg, 0, WM_QUIT, WM_QUIT, PM_REMOVE)
    end;
    ......
  • Profile
    용팔이 2002.08.23 07:08
    ..