Ver la Versión Completa : MessageDlg automatico
Como puedo hacer para que al desplegar un MessageDlg con un boton MbOK, sin que el usuario pulse el boton, pasados 3 segundos el dialogo se desaparesca
roman
01-06-2005, 23:17:23
Lo ideal sería que hicieras tu propio cuadro de diálogo, pero a manera provisional prueba esto:
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := true;
if MessageDlg('¿Quiere formatear su disco duro?', mtWarning, [mbYes, mbNo], 0) = mrYes then
ShowMessage('Su disco duro ha sido formateado, gracias');
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
Wnd: HWnd;
begin
Wnd := FindWindow(nil, 'Warning');
if Wnd <> 0 then
keybd_event(VK_RETURN, 0, 0, 0);
Timer1.Enabled := false;
end;
Timer1 sería un Timer inhabilitado con su propiedad Interval igual al tiempo que desees esperar.
// Saludos
Muchisismas gracias es la solucion a mi problema. Muy amable de tu parte
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.