728x90
반응형
정해진 시간에 없어지는 MessageBox
728x90
정해진 시간에 없어지는 MessageBox
procedure MessageBoxTimerProc(hWnd: HWND; uMsg: UINT; idEvent: UINT; Time: DWORD); stdcall;
...
procedure MessageBoxTimerProc(hWnd: HWND; uMsg: UINT; idEvent: UINT; Time: DWORD);
begin
PostQuitMessage(0);
end;
function TimedMessageBox(hwndParent: HWND;
ptszMessage: LPCTSTR;
ptszTitle: LPCTSTR;
flags: UINT;
dwTimeout: DWORD): Integer;
var
idTimer: UINT;
uiResult: UINT;
msg: TMSG;
begin
idTimer := SetTimer(0, 0, dwTimeout, @MessageBoxTimerProc);
uiResult := MessageBox(hwndParent, ptszMessage, ptszTitle, flags); KillTimer(0, idTimer);
if (PeekMessage(msg, 0, WM_QUIT, WM_QUIT, PM_REMOVE)) then
uiResult := 0;
Result := uiResult;
end;
사용법
TimedMessageBox(0, PChar('나 2초 있다가 죽어요!'), PChar('^^'), MB_OK, 2000);
728x90
반응형
'Delphi Tip > +Tip' 카테고리의 다른 글
메인 메뉴에 팝업메뉴 달기 (0) | 2023.11.28 |
---|---|
델파이 툴 메뉴 생성 (현재 프로젝트 경로 열기) (0) | 2023.11.22 |
Drag and Drop(끌어서 놓기) (0) | 2023.07.26 |
델파이 암호화 (0) | 2023.07.13 |
가변 데이터의 저장 기법 (0) | 2023.07.10 |
댓글