Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-03-2012
samael205 samael205 is offline
Registrado
NULL
 
Registrado: mar 2012
Posts: 9
Poder: 0
samael205 Va por buen camino
Generar una Excepción Try Catch para una Imagen.

Hola, que hay de nuevo?
Tengo el siguiente problema,
tengo una Base de datos, y una tabla, uno de los campos de esa tabla es de tipo VARCHAR que continen la ruta de una imagen.
He conseguido hacer que la imagen se muestre cada vez que que se cambia de tupla seleccionada.
Pero ahora necesito una exepción que me compruebe que la ruta de la imagen es correcta, si lo es que muestre la imagen,
Si no que no aga nada,
Me podeis dar algun ejemplo, que en delphi no se como crear Excepciones Gracias.
Responder Con Cita
  #2  
Antiguo 28-03-2012
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Para empezar mira esto para comporbar si el fichero con la imagen existe o no.
Luego puedes generar una excepción siguiendo este link
Quedaría algo así:
Código Delphi [-]
if (not FileExists(ArchivoConImagen))
  then Raise Exception.CreateFmt('No encuentro el archivo de imagen : ''%s''', [ArchivoConImagen]);
Responder Con Cita
  #3  
Antiguo 28-03-2012
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Buscando un poco más he encontrado esto que puede quedar mejor:
Código Delphi [-]
var
  E: EInOutError;
...
  if (not FileExists(ArchivoConImagen)) then
  begin
     E := EInOutError.Create( 'No encuentro el archivo de imagen : ''%s''', [ArchivoConImagen] );
     // El codigo de error para este tipo de excepcion puede tener estos valores (Help de Delphi 6)
     // 2 File not found
     // 3 Path not found
     // 5 Access denied
     // 32 Sharing violation
     E.Errorcode := 2;
     raise E;
  end;

Puedes leer un poco más sobre excepciones aqui.
Responder Con Cita
  #4  
Antiguo 28-03-2012
samael205 samael205 is offline
Registrado
NULL
 
Registrado: mar 2012
Posts: 9
Poder: 0
samael205 Va por buen camino
Smile Solucionado y nuevo Problema

Gracias por tu consejo, me ha funcionado, Bastaba con el if FileExistst.
ahora bien,

Tengo un formulari y un Datamodule, El formulario contiene el TImage y el Datamodule la correspondiente base de datos con la tabla que contiene la ruta de la imagen.

He tenido que crear una Tabla Mastersource en el Formulario que referencie a la tabla del dataModule para obtener la imagen.
El problema esta en que el evento se ejecuta una accion mas tarde de lo habitual.
Es decir Cambio coche para ver los datos del siguiente coche pero la imagen no carga, se queda la misma, pero vuelvo a cambiar de coche y cambia la imagen por el ultimo registro del que estoy ahora. es decir

Estoy en 1

muestra 1

cambio a 2

muestra 1

Cambio a 3
Me muestra 2

Cambio a dos
Me muestra 3

No se si me he explicado bien. ¿Como puedo Solucionar este problema?

Esto no lo he podido hacer de otra manera, he intentado desde el AfterInsert de la tabla de origen en el DataModule modificar el LoadFromFile de Picture, pero al hacerlo desde El DM me dice acces violation. Como puedo encontrar solución a esto???.
Responder Con Cita
  #5  
Antiguo 28-03-2012
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Abre otro hilo para esto, por favor.
Es una pregunta totalmente distinta y no tiene que ver con lo que estamos tratando ahora.

Gracias
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Porque no funciona Try Catch?? rogeliogamberro C++ Builder 5 14-12-2010 05:49:41
Capturar Excepcion-Error al salir de mi programa, para que no me salga mancurnino Varios 1 11-05-2008 22:04:11
Pressing Catch para PS2 Ariel Pérez La Taberna 19 12-10-2007 21:36:40
try y catch en una consulta rodrigodeoz Conexión con bases de datos 8 04-10-2007 18:24:37
Como de un reporte generar una imagen Odnanref Impresión 4 23-12-2003 22:49:00


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


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
Copyright 1996-2007 Club Delphi