Ver Mensaje Individual
  #4  
Antiguo 07-04-2011
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Reputación: 22
Caro Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Y cual es el problema?
Hola Casimiro, por el codigo que ha puesto, el mensaje se muestra una y otra ves ya que el showmessage esta dentro del timer.

Cita:
Empezado por granodetoro Ver Mensaje
................ entonces cuando inicia el programa pongo un showmessage que dice tiene un limite de tiempo para usar el programa y quiero que el showmessage se cierre cuando doy clic en la x
.................
Para que no ocurra eso no pongas el showmessage dentro del timer, a no ser con una banderita para que se ejecute solo una ves, pero corremos el riesgo de que el usuario tarde en presionar la X y se siga mostrando el mensaje varias veces según al tiempo que le hayas dado al timer.

Puedes utilizar el evento OnActivate, para que te muestre el mensaje despues de cargar el form.

Código Delphi [-]
//con una banderita para que se ejecute solo una ves
procedure TForm1.FormActivate(Sender: TObject);
begin
 if band then
  begin
   showmessage('tiene un limite de tiempo para usar el programa ');
   band := false;
  end;
end;

o también puedes enviar un mensaje con PostMessage

Código Delphi [-]
const
  AfterShow = WM_USER + 1;
...............................
...............................
  procedure After_Show(var Msg: TMessage); message AfterShow;
...................................
procedure TForm1.After_Show(var Msg: TMessage);
begin
 showmessage('tiene un limite de tiempo para usar el programa ');
end;

procedure TForm1.FormShow(Sender: TObject);
begin
 PostMessage(Handle, AfterShow, 0, 0);
end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.

Última edición por Caro fecha: 07-04-2011 a las 04:27:19.
Responder Con Cita