![]() |
TImage y jpeg en aplicación CLX
Hola!
Este es mi primer mensaje aquí. Leyendo estos foros he encontrado solución a muchas dudas pero esta no la he encontrado. A ver si podeis echarme una mano. Estoy desarrollando una aplicación CLX con Delphi 7 Profesional, y necesito en una pantalla cargar unas imagenes cuya ruta de acceso está en una base de datos. Para ello uso un TImage y utilizando LoadFromFile le asigno la ruta, el problema es que me da el error de "Unknown picture file extensión (.jpg)", a pesar de haber incluido en Uses la unidad Jpeg He intentado tambien registrar el formato como vi en un mensaje pero tampoco ha servido de nada
El código está correcto, ya que realizo la misma operación en un form VCL de prueba y sin problemas. He leido que es problema del CLX en Windows con los jpeg. A ver si podeis ayudarme a dar con la solución. Gracias por adelantado |
El "página no oficial de parches para clx" (si la noticias son ciertas el autor de la página ha pasado o pasará a formar parte de la plantilla de borland), existe algo que te puede servir el QJPEGLoader, aunque desconozco su uso.
|
Muchisimas gracias. Ha funcionado perfectamente ;)
|
Yo solucione el problema de la siguente manera.
mira yo tenia el mismo problema pero tengo las rutas de los archivos en una lista cuando hago click en la lista me tiene que mostrar la foto en un TImage. y lo que hice fue lo siguiente
procedure TForm1.listaClick(Sender: TObject); var imagenJPG : TJpegImage; begin if sacaExt(lista.Items.Strings[lista.itemIndex]) then view.Picture.Assign(imagenJPG) else view.Picture.Assign(view.Picture.Bitmap); view.Picture.LoadFromFile(lista.Items.Strings[lista.itemIndex]); end; saca extension lo hice porque no se como se saca una extension en delphi si sabes decimelo en patatasadultas@yahoo.com.ar el codigo de sacaExt es el siguiente function sacaExt(s : string) : boolean; var i : integer; s1 : string; begin s1 := ''; i := length(s); for i := i - 4 to i do begin if not(s[i] = '.') then s1 := s1 + s[i]; end; sacaExt := ((upperCase(s1) = 'JPEG') or (upperCase(s1) = 'JPG')); end; |
Para extraer la extensión de cualquier archivo: ExtractFileExt
function ExtractFileExt(const FileName: string): string; |
La franja horaria es GMT +2. Ahora son las 09:28:29. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi