PDA

Ver la Versión Completa : Cargar Imagenes con el DBIMAGE desde un QUERY


(VIH)Lestat
28-06-2005, 17:55:42
Disculpen señores.. y perdon por las molestias que ocasione me hilo.. y perdon por la ignorancia acerca de los IBQuerys pero mi Delphi no contiene la Ayuda en donde estan las propiedades del IBQUERY....

Mi pregunta es la siguiente::

Como puedo cargar una imagen en el DBIMAGE por medio de la ruta de la FOTO.. es decir yo genero mi consulta en sql con el IBQUERY y dentro de los campos que selecciono con el query esta uno llamado FOTOGRAFIA este campo almacena la direccion de la foto del alumno y cuando se ejecuta mi consulta los datos deberan aparecer en un formulario al que llamo FICHA y en su propiedad ONSHOW le tengo puesto lo siguiente:

DBImage1.Picture.LoadFromFile(ModuloSID.IBBuscar_alumno.FieldByName ('fotografia').AsString);

en donde:

MODULOSID--> es el nombre del modulo de datos que utilizo
DBIMAGE!--> es el DBIMAGE que esta en el formulario FICHA
IBBuscar_alumno--> Es el IBQUery que utilizo para la Busqueda del alumno

pero si se dan cuenta estoy utilizando la propiedad FieldByName en el IBQuery y esta funcion o propiedad el IBquery no la maneja ...
entonces como puedo pasarle la ruta de la foto al DBimage por medio del IBQUERy de busqueda que utilizo??????

Que propiedades son las que tiene y cuales me pueden servir y como funcionan?????

Neftali [Germán.Estévez]
28-06-2005, 18:02:24
¿Has probado FieldValues?


Customers['CustNo'] := Edit1.Text;
// debería funcionat tb al revés...

(VIH)Lestat
28-06-2005, 18:07:18
nooooo!!!!!!
me podrias decir como funciona??? por que no tengo la ayuda del IBQuery y no se cuales son las propiedades que puedo utilizar....

me puedes dar un ejemplo de como se utiliza el FIeldValues y para que sirve ??'

Neftali [Germán.Estévez]
28-06-2005, 18:13:40
Prueba ésto:


DBImage1.Picture.LoadFromFile(ModuloSID.IBBuscar_alumno.FieldValues ['fotografia']);

(VIH)Lestat
28-06-2005, 18:20:24
Probe lo que me dices pero me marca un mensage de error...
este es el mensaje:

'Could not convert variant of type (null) into type (string)' Process Stoped.
a que se debera ese error ... me puedes decir????

Osorio
29-06-2005, 02:28:56
Buenas noches,

dos cositas.

La primera es que FieldByname si lo encuentras en el IBQUERY puesto que este componente es un descendiente del TDataset (conjunto de datos) y todos los conjuntos de datos tienen esta funcion.


Lo segundo es que te sugiero que uses un componente TImage y no un TDBImage, puesto que el segundo esta diseñado para mostrar imagenes contenidas dentro de la BD por lo que tendrias que asociarlo a un campo de TTABLE (u otro conjunto de datos), tener el conjunto de datos abierto y en modo de edicion.


a mi me funciona asi:

Image1.Picture.LoadFromFile(IBQuery1.FieldByName('fotografia').AsString);


Saludos,

Neftali [Germán.Estévez]
29-06-2005, 10:00:44
Probe lo que me dices pero me marca un mensage de error...
Supongo que deberías comprobar que no sea nulo el valor del campo. El objeto TField creo recordar que tiene una propiedad IsNull.
De todas formas FieldByName, tal y como dice Osorio sí existe en TIBQuery (lo dijiste tan convencido qie piqué...:D:D), no en las propiedades, pero sí en los métodos.

(VIH)Lestat
29-06-2005, 17:03:44
Gracias a todos los que me apoyaron en esto del IMAGE... la verdad si funciono con el FieldByName.. grax...!!!

Salu2