Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-05-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Acabo de probar tu código practicamente sin modificaciones y me ha funcionado bien. La única diferencia sería en la comparación:

Código Delphi [-]
if Field.Name = 'Icono' then

que yo pongo como

Código Delphi [-]
if Field.FieldName = 'Icono' then

Name es el nombre de la componente TField y no el nombre del campo. Así que yo creo que el único problema es ése, la condición nunca se cumple de manera que todo se dibuja tal cual.

// Saludos
Responder Con Cita
  #2  
Antiguo 31-05-2007
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Roman, yo lo acabo de probar otra vez, y no me dibuja nada, de hecho ni siquiera me muestra los demas datos, y me vuelve a salir que la variable icono no puede inicializarse. No se que puede ser, que estoy haciendo mal.

La imagen la cargo asi

Código Delphi [-]
procedure TLocal.Button1Click(Sender: TObject);
var
  MS : TMemoryStream;
begin
MS := TMemoryStream.Create;
  MS.LoadFromFile('c:\a.bmp');
     SQL.SQL.Clear;
    SQL.SQL.Add('INSERT INTO unidades (icono) VALUES(:PFOTO)');
    SQL.Parameters.ParamByName('PFOTO').LoadFromStream(MS,ftBlob);
    // o bien (pruebo ambas, creo que no hay diferencia pero por si acaso)
    //  SQL.ParamByName('PFOTO').LoadFromStream(MS,ftBlob);
    SQl.ExecSQL;
    MS.Free;
    QUnidades.Close;
    Qunidades.Open;
end; // del procedure

y el procedimiento para que se dibujen es este

Código Delphi [-]
procedure TLocal.DBGrid3DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
var icono: TBitmap;
begin
if Field.FieldName = 'Icono' then
begin
  try
   icono:= Tbitmap.Create;
   icono.Assign(TBlobField(Field));
   (Sender as TDBGrid).Canvas.FillRect(Rect);
   (Sender as TDBGrid).Canvas.Draw(Rect.left+3,Rect.Top+1, icono);
  finally
    icono.free;
  end;
end
else
    (Sender as TDBGrid).DefaultDrawDataCell(Rect, Field, State);
end;

Pero ni se dibuja la imagen en la celda, ni me muestra los datos de cualquier otro campo. La propiedad DefaultDrawing esta en False. Pero me sigue saliendo:

Código Delphi [-]
[Warning] Unit2.pas(824): Variable 'icono' might not have been initialized

Porque??, lo que pienso es que al no coincidir el FieldName, no se crea, por lo que tampoco puede destruirse, a lo que voy, es porque? si en mi tabla tengo el campo icono como ObjetoOLE, y me figura como BLOB.

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #3  
Antiguo 31-05-2007
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
Volvi a hacer todo de nuevo, y me sigue sin funcionar, como hiciste para que te funcionara? me podrias poner algo de codigo? tal vez asi me de cuenta.

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
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
problema al intentar guardar una imagen como blob en una tabla Gigabyte1024 Conexión con bases de datos 3 22-02-2007 23:30:34
Cargar imagen BLOB usando BDE leodenis784 Gráficos 3 12-09-2006 10:31:07
conocer extensión de imagen en un campo blob... uper Gráficos 1 02-02-2006 20:21:42
Guarda Imagen en Campo Blob con Sql kpss8m Firebird e Interbase 2 16-08-2005 16:18:04
Funcion Udf que devuelva un blob (imagen) Emiro Firebird e Interbase 2 04-08-2003 15:59:40


La franja horaria es GMT +2. Ahora son las 14:45:50.


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