Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-08-2005
Avatar de Anunakis
Anunakis Anunakis is offline
Miembro
 
Registrado: abr 2004
Posts: 37
Poder: 0
Anunakis Va por buen camino
Question Colorear las lineas de un DBGrid

Hola a todos,

Mi pregunta es la siguiente:
¿Como puedo hacer para que un DBGrid me salgan sus lineas alternado el color, por ejemplo blanco y amarillo, para que genere el tipico efecto que sale en la mayoria de sitios.

He probado en DBGrid1DrawColumnCell pero no se como especificar que si la linea es par sea blanca o impar amarilla ya que este evento es para las columnas y no las filas.

Gracias de antemano
__________________
Un buen programador no se mide por los programas que hace, sino por lo que ayuda a los demás programadores.
Responder Con Cita
  #2  
Antiguo 24-08-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Esta búsqueda en los Foros ofrece, entre otros Hilos, este, este y este, que creo pueden echarte una mano.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 24-08-2005
Avatar de Anunakis
Anunakis Anunakis is offline
Miembro
 
Registrado: abr 2004
Posts: 37
Poder: 0
Anunakis Va por buen camino
No me ha servido porque yo lo que busco es pintar las lineas y no las columnas, lo que busco es como saber si estoy en una linea par o impar de un DBGrid porque el pintar no es el problema sino la condicion esa.

De todos modos gracias por contestar y por la rapidez.
__________________
Un buen programador no se mide por los programas que hace, sino por lo que ayuda a los demás programadores.
Responder Con Cita
  #4  
Antiguo 24-08-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
El DBGrid de las JVCL tiene una propiedad AlternateRowColor y otra AlternateRowFontColor en donde defines que color quieres para las filas pares.

La dbgrid de SM tambien maneja colores alternados, incluso tiene varias combinaciones de colores ya definidas.

En pocas palabras, con estos componentes no tienes que programar nada de código para tener el efecto que pides, solo hay que definir los colores en las propiedades.

La dbgrid de sm es dos o tres compnenetes solamente y las JVCL se intala junto con un motón de componentes. Lo más rápido sería utilizar la de SM , pero yo utilizaría las JVCL ya que estoy seguro que tambien te podrán ayudar con más cosas.
__________________

Responder Con Cita
  #5  
Antiguo 26-08-2005
Avatar de Anunakis
Anunakis Anunakis is offline
Miembro
 
Registrado: abr 2004
Posts: 37
Poder: 0
Anunakis Va por buen camino
Ya conocia esos grids de las JVCL pero los de SM no. El caso es que, aunque tenga que programas me da igual, lo que pasa es que tengo un proyecto de mas de 60grids cada uno con sus propiedades y eventos asignados y no es plan de cambiar todo eso.

Yo habia pensado en un codigo que me lo pintase y asignarles a todo ese mismo procedimiento y asi me ahorro mucho trabajo.

Gracias de todas formas, veo que hay gente que le pone interes a las dudas de los demas.
__________________
Un buen programador no se mide por los programas que hace, sino por lo que ayuda a los demás programadores.
Responder Con Cita
  #6  
Antiguo 26-08-2005
Avatar de Chente(rMan)
Chente(rMan) Chente(rMan) is offline
Miembro
 
Registrado: ago 2005
Posts: 89
Poder: 19
Chente(rMan) Va por buen camino
Thumbs up

Que tal Anunakis, yo tambien ya habia buscado esto que preguntas, y lo habia buscado tambien en los hilos que te enviaron, pero ahi no encontre nada, de cualquier manera aqui te envio la solución.


en el evento OnDrawColumnCell de tu dbgrid agrega este código:

Código Delphi [-]
  with (Sender as TDBGrid) do
    begin
      if DataSource.DataSet.RecNo mod 2 = 0 then
        Canvas.Brush.Color := $00F8FFC6
      else
        Canvas.Brush.Color := clWhite;
      Canvas.Font.Color := Font.Color;
      DefaultDrawColumnCell(Rect, DataCol, Column, State);
    end;

y listo!!!


Saludos.


Vicente López.
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 04:08:30.


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