Club Delphi  
    FTP   CCD     Enlaces   Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Desplegado
  #1  
Antiguo 10-03-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
enecumene Va por buen camino
obtener el path de una imagen cargado en un Timage

hola!!

a lo mejor es algo bastante sencillo pero me he cansado de buscar informacion sobre este tema ya sea por google y aqui en el foro, lo que quiero hacer es guardar la ruta de una imagen a una base de datos Access, yo se cargar la imagen en un Timagen en incluso se guardar una imagen en una campo Blob pero de esa forma no me conviene porque la misma engorda la base de datos.

supongo que al obtener el path de la imagen cargado en un timage se muestra en un DBEdit para luego grabarlo en la base de datos, en la red solo encuentro informacion de como guardar una imagen dentro la base de datos y no la ruta ya llevo dos semanas buscando esa información por eso he decidido abrir este hilo, espero que me puedan mostrar la forma de hacerlo, gracias y saludos de antemano...
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #2  
Antiguo 10-03-2007
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.303
Delphius Va camino a la fama
enecumene, de lo que se... no puede obtenerse el path de una imagen cargada en un TImage, en modo de ejecución no es posible hacer algo como:

Código Delphi [-]
path := Image1.Filename, // tampoco es válido esto:
path := Image1.Picture.Filename

Ahora, bien en tiempo de ejecución puedes cargar una imagen con el comando
Código Delphi [-]
Image1.Picture.LoadFromFile('LaPathCompleta');

Ahora... la manera de ingresar la path hacia la base de datos sería:
1. Tener una variable para usar como parámetro para una query. Digamos por ejemplo algo como:

Código Delphi [-]
var MiRuta: string;

2. Entonces... para abrir la imagen, cargas en MiRuta el FileName, usando por ejemplo un picturedialog:

Código Delphi [-]
MiRuta := OpenPictureDialog1.Filename;
Image1.Picture.LoadFromFile(MiRuta);

2. Ahora en un query haz algo como:
Código Delphi [-]
Miquery.Close;
Miquery.ParamByName('MiParametro').AsString := MiRuta;
Miquery.SQL.add('insert into..... //bla... bla...');
Miquery.SQL.add('campoPath = :MiParametro'); // el parámetro va precedido de los dos puntos
Miquery.ExecSQl. // O es Miquer1.Open .... La verdad que no me acuerdo...

Lo estroy escribiendo al vuelo... no tengo Delphi abierto en estos momentos. Pero creo que con algo asi puedes almacenar la path.

Por cualquier cosa avisa, o busca en los foros porque este tema es "moneda corriente".

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 10-03-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
enecumene Va por buen camino
Gracias Delphius por tu pronta repuesta ahora mismo intentare tus recomendaciones luego te aviso..
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #4  
Antiguo 10-03-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
enecumene Va por buen camino
este es el codigo como me esta quedando:

Código Delphi [-]
procedure TfrmAddPel.CargarFoto1Click(Sender: TObject);
var MiRuta: String;
begin
if CargarPoster.Execute then begin
 MiRuta := CargarPoster.FileName;
 JvImage1.Picture.LoadFromFile(MiRuta);
  qryPeliculas.Close;
  qryPeliculas.Parameters.ParamByName('Foto').Value := MiRuta;
  qryPeliculas.SQL.add('insert into PELICULAS values');
  qryPeliculas.SQL.add('PELFOTO = :Foto'); // el parámetro va precedido de los dos puntos
  qryPeliculas.Open;
 end;
end;

Problema:

Cita:
qryPeliculas.Parameters.ParamByName('Foto').Value := MiRuta;
como se trata de componentes ADO no existe la propiedad ParamByName al no poner la propiedad Parameters, AsString no me reconoce por eso puse Value y al cargar la foto me sale un error del parametro impropiado o que falta datos, que puede ser??

error:

Cita:
Parameter object is improperly defined, inconsistent or imcoplete information was provided.
saludos,
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.

Última edición por enecumene fecha: 10-03-2007 a las 23:50:37.
Responder Con Cita
  #5  
Antiguo 11-03-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
enecumene Va por buen camino
Ya Resolvi!!!!

ya resolvi el código quedó asi:

Código Delphi [-]
procedure TfrmAddPel.SpeedButton1Click(Sender: TObject);
begin
  try
   CargarPoster.Execute;
   JvImage1.Picture.LoadFromFile(CargarPoster.FileName);
  Finally
  if CargarPoster.FileName <> '' then DBEdit10.Text := CargarPoster.FileName;
  CargarPoster.Free;
  end;
end;

que hace el código? pues lo que hace es que carga la imagen en un Timage y a la vez Carga la ruta en un DBEdit enlazado a la tabla!!. espero que este código le sirva de utilidad a muchos otros.

Bye...
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
Respuesta


Herramientas
Desplegado

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
Cargar imagen en un TImage luxus OOP 3 16-02-2007 17:06:23
Obtener PATH del ejecutable emeceuy Varios 7 25-01-2006 17:59:46
Obtener el path del ejecutable del internet Explorer cone220 Varios 9 27-05-2004 01:34:02
Obtener posicion X,Y de un pixel en un TImage diegofhernando Varios 3 17-12-2003 15:03:23


La franja horaria es GMT +2. Ahora son las 11:57:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi