Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Capturar Mensajes de error (https://www.clubdelphi.com/foros/showthread.php?t=26562)

daly 26-10-2005 22:19:44

Capturar Mensajes de error
 
Hola!
Estoy haciendo una aplicación en Delphi. Tengo varias clases que son usadas por la apliación principal. Estas clases generan errores, como por ejemplo:

Código Delphi [-]
 raise Exception.Create('Error, Línea 5 con caracteres desconocidos');
Como puedo capturar este mensaje de error y mostrarselo al usuario desde la apliación principal.
Este sería el código de un botón de la aplicación principal por ejemplo

Código Delphi [-]
 procedure TForm1.Button1Click(Sender: TObject);
 begin
   try
     {instrucciones del programa}
   except
     //Aquí me gustaría mostrar el mensaje de error generado por otra clase
   end;
 end;
Gracias
Saludos

roman 26-10-2005 22:49:13

Pues no hagas nada. A no ser que quieras dar un tratamiento especial a la excepción, ésta saltará solita sin necesidad del try-except.

// Saludos

daly 27-10-2005 14:45:01

necesito controlar el error en el programa principal. Si este hace una llamada a una función de un objeto que tiene su propia clase y durante el proceso se ejecuta un error, automáticamente se cancela el resto de insturcciones de la función, muestra el mensaje de error y continua el programa principal. A mi no me interesa que continúe el programa principal. Una de las razones es realizar un rollback en la base de datos. Por este motivo me veo obligado a controlar los mensajes de error en el programa principal. Pero si pongo un try /except no visualizo el mensaje de error a no ser que pueda capturarlo. Esta es mi pregunta
como capturar el mensaje.
Saludos

xavinet 27-10-2005 16:09:38

hola
 
hola!

si lo he entendido bien podrias hacer lo siguiente:
Código:

procedure TForm1.Button1Click(Sender: TObject);
 begin
  try
    {instrucciones del programa}
  except
    //Aquí me gustaría mostrar el mensaje de error generado por otra clase
    On E: Exception do
      begin
        //Aquí tratarias el error si es necesario
        ShowMessage(E.Message); //muestras tu error           
      end;
  end;
 end;

bueno eso es todo, sabiendo lo poco que nos has contado, si necesitas más aquí estamos!!

Lepe 27-10-2005 16:18:49

Código Delphi [-]
 procedure TForm1.Button1Click(Sender: TObject);
 begin
   try
     {instrucciones del programa}
   except
      transacciones.rollback;
      raise; // levantamos de nuevo la excepción producida, para que el usuario
               // final pueda verla.
     //Aquí me gustaría mostrar el mensaje de error generado por otra clase
   end;
 end;

daly 27-10-2005 20:56:46

ok, ha sido de ayuda. Es lo que buscaba.
Saludos


La franja horaria es GMT +2. Ahora son las 12:23:09.

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