Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Messagebox (https://www.clubdelphi.com/foros/showthread.php?t=55133)

aanil 09-04-2008 00:55:50

Messagebox
 
Hola a todos.

El siguiente codigo se lo escribo en Delphi en el evento onClose, para un boton que cierra la aplicacion.

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if application.MessageBox('Desea Salir','Salir',mb_yesNo)=idYES then
application.Terminate;

end;
end.

Mi pregunta va por lo siguiente: si presiono el boton SI de Messagebox, cierra la aplicacion, pero lo mismo hace el boton NO. ¿Que me falta para que el boton No cierre el messagebox y se quede en la aplicacion.

Gracias por tomarnos en cuenta.

cHackAll 09-04-2008 01:00:37

Código Delphi [-]
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 if Application.MessageBox('Realmente desea cerrar el formulario?', 'Confimación', MB_YESNO) = IDNO then
  Action := caNone;
end;

pero mejor en el evento CloseQuery;

Código Delphi [-]
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
 CanClose := Application.MessageBox('Realmente desea salir?', 'Confimación', MB_YESNO) = IDYES;
end;

Saludos

aanil 09-04-2008 01:15:48

Messagebox
 
Gracias mi hermno funciona perfecto.

Y si yo quiero una advertencia para indicarle al usuario que si esta seguro de borrar el contenido de una tabla. Cual seria la forma mas simple de un messageBox?

cHackAll 09-04-2008 01:19:07

Código Delphi [-]
 if Application.MessageBox('Realmente deseas borrar la tabla más importante?', 'Confimación', MB_YESNO) = IDYES then
  mysql_query(Handle, 'drop table UtilizaLaBusqueda');

aanil 09-04-2008 01:20:55

Messagebox
 
Gracia Muchas Gracias.

MaMu 09-04-2008 03:42:40

Bueno, pero aunque todos los casos estan bien, faltaria contenplar la opcion por false, anidando el resultado del boton:

Código Delphi [-]
 if Application.MessageBox('Deseas una taza de te?', 'Merienda', MB_YESNO) = IDYES
then begin
   //Me tomo el Té
end
else begin
  //No gracias, ya merendé
end;

Saludos

aanil 09-04-2008 14:58:34

MessageBox
 
Gracias Mamu por tomarme en cuenta.


La franja horaria es GMT +2. Ahora son las 12:27:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi