Mostrar imagenes usando Cast() con MySQL

Necesito mostrar una imágen en un formulario, esta representa la foto o logo del cliente. No tengo ningún problema al guardarla ni al mostrarla, lo que necesito saber es si estoy haciendo algo mal, si es mi PC o si asi es cada vez que se ejecuta ese proceso.

La imagen se guarda en un Blob.

Para guardar la imagen lo hago con filetostr(), para extraerla cast(vcursor. Foto as blob) (Si lo hago con strtofile() no me muestra nada) esto lo mando al pictureval de la imagen, pero al iniciar el formulario se queda pegado como 5 segundos, no tira error pero no es muy bonito ver solo los bordes del formulario mientras este carga, ¿alguna forma de que sea más rápido?

1 respuesta

Respuesta
1

Yo lo que hice fue lo siguiente:

Suponiendo que esto es la consulta que le mando a MySql. Enseguida, ejecuto otra consulta, ya desde fox, para darle formato blob de fox, al campo blob de MySql.

TEXT TO lcStr NOSHOW TEXTMERGE PRETEXT 7
    SELECT c.privfotof,c.privfotoli,c.privfotold,a.privide
    from privado as a left join privadofoto as c on a.privide=c.privide
    where c.privide=<<thisform.privide>> and privfotodel<>1      
ENDTEXT

IF _screen.loCon.ProcesarSql(_screen.lnHandle,lcStr,"privfoto")
    SELECT CAST(privfotof as w) as privfotof,CAST(privfotoli as w) as          privfotoli,CAST(privfotold as w) as privfotold,privide;
    FROM privfoto;
    INTO CURSOR privfoto   

Endif

Y luego asigno al picture:

        thisform.imgF.PictureVal=privfoto.privfotof

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas