Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-11-2003
Sinaloense Sinaloense is offline
Miembro
 
Registrado: oct 2003
Posts: 139
Poder: 21
Sinaloense Va por buen camino
Imagen en un dbgrid...

Quiero que en la primer columna de un dbgrid me aparesca una imagen pero solo en la columna del campo seleccionado, esto es, si me desplazo con el teclado en el dbgrid la imagen solo aparecera en la primer columna de la fila seleccionada.

Ya he intentado muchas cosas y no me sale. =/

Alguna ayuda?

Gracias.
Responder Con Cita
  #2  
Antiguo 04-11-2003
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
Cita:
Sinaloense comentó:
Ya he intentado muchas cosas y no me sale. =/
¿Y qué es lo que has intentado? Platícanos y quizá se nos ocurra algo a partir de lo que has probado.

// Saludos
Responder Con Cita
  #3  
Antiguo 05-11-2003
Sinaloense Sinaloense is offline
Miembro
 
Registrado: oct 2003
Posts: 139
Poder: 21
Sinaloense Va por buen camino
Esto es lo que hago:

if not (gdSelected in State) then
begin
if Odd(Table1.RecNo) then
DBGrid1.Canvas.Brush.Color := TColor($00FEE2E8); DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end
else
begin
DBGrid1.Canvas.Brush.Color := TColor($0080FF00);
if DBGrid1.Columns[DataCol].Index=0 then
begin
DBGrid1.Canvas.FillRect(Rect);
ImageList1.Draw(dbgrid1.Canvas,Rect.Left+4,Rect.Top,0,True);
end;
end;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
Responder Con Cita
  #4  
Antiguo 05-11-2003
Sinaloense Sinaloense is offline
Miembro
 
Registrado: oct 2003
Posts: 139
Poder: 21
Sinaloense Va por buen camino
En el evento OnDrawColumCell
Responder Con Cita
  #5  
Antiguo 05-11-2003
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
No soy muy ducho en esto de dibujar y es difícil leer el código sin indentar, pero una vez indentado:

Código:
if not (gdSelected in State) then
begin
  if Odd(Table1.RecNo) then
    DBGrid1.Canvas.Brush.Color := TColor($00FEE2E8);
    
  DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end
else
begin
  DBGrid1.Canvas.Brush.Color := TColor($0080FF00);
  if DBGrid1.Columns[DataCol].Index=0 then
  begin
    DBGrid1.Canvas.FillRect(Rect);
    ImageList1.Draw(dbgrid1.Canvas,Rect.Left+4,Rect.Top,0,True);
  end;
end;

DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
pienso que la última llamada a DefaultDrawColumnCell no debe ir. Este método dibuja lo que se dibujaría normalmente de manera que da la impresión de que sobre-dibuja sobre lo que en las líneas anteriores dibujaste.

// Saludos
Responder Con Cita
  #6  
Antiguo 05-11-2003
Sinaloense Sinaloense is offline
Miembro
 
Registrado: oct 2003
Posts: 139
Poder: 21
Sinaloense Va por buen camino
Lo logre!!!

Gracias por su ayuda.

Código:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if not (gdSelected in State) then
begin
  if Odd(Table1.RecNo) then
    DBGrid1.Canvas.Brush.Color := Tcolor($00E1E1E1);
  DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end
else
begin
  if DBGrid1.Columns[DataCol].Index=0 then
  begin
    DBGrid1.Canvas.FillRect(Rect);
    ImageList1.Draw(dbgrid1.Canvas,Rect.Left,Rect.Top,0,True);
  end;
end;
end;
Responder Con Cita
  #7  
Antiguo 16-03-2011
fsolispa fsolispa is offline
Miembro
 
Registrado: sep 2008
Posts: 28
Poder: 0
fsolispa Va por buen camino
Sobre el mismo tema

Revise la información que colocaste, el punto es que necesito que se muestre la imagen que se encuentra almacenada en la base de datos trabajo con una conexion a mysql, donde tengo un campo que me soporte imagenes, pero no puedo mostrarla dentro de la grid, al menos ya se que es posible, me podrian ayudar, gracias
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


La franja horaria es GMT +2. Ahora son las 21:47:41.


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