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 11-12-2006
JULIOCTORRESG JULIOCTORRESG is offline
Miembro
 
Registrado: sep 2006
Posts: 58
Poder: 18
JULIOCTORRESG Va por buen camino
Pintar un Grid ....me falta algo

tengo un dbgrid y en el segun el valor de campo cambio el color de la fuente
a rojo o negro segun sea el caso
Código Delphi [-]
   Canvas.FillRect(Rect);

     // en base al campo decido si centrar o no el  texto
     largo:=length(Column.Field.AsString)*2;    //aca defino el largo del campo para luego restarlo y asi centrar el texto
 
        if (column.Field.fieldname='Status')and (column.field.value ='Vencido') then Canvas.Font.Color:=clred
                                                                          else canvas.font.Color:=clblack;

       if ((column.Field.fieldname='Status')or(column.Field.fieldname='Dias')) then Canvas.TextOut((Rect.Left + 20)-largo, Rect.Top + 2, Column.Field.AsString)
                                                                                else Canvas.TextOut(Rect.Left + 2, Rect.Top + 2, Column.Field.AsString);
el problema es que cuando selecciono una fila el color es el predeterminado por windows en mi caso azul oscuro y con letra negra no se ve nada como coloco la fila seleccionada en letra blanca o vistosa....

gracias....

Última edición por vtdeleon fecha: 11-12-2006 a las 23:39:41.
Responder Con Cita
  #2  
Antiguo 11-12-2006
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
Prueba poner algo como

Código Delphi [-]
if State*[gdSelected, gdFocused] = [] then
  Canvas.Font.Color := clWhite;

Es decir, con esa condición detectas si la celda en ese momento está seleccionada, y de ser así, pone el color blanco en lugar del rojo.

// Saludos
Responder Con Cita
  #3  
Antiguo 11-12-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

No enteindo el asterisco allí, escapa de mis conocimientos. Podrías explicarmelo? román
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #4  
Antiguo 11-12-2006
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
El asterisco es la intersección de conjuntos y- ahora que lo veo - está mal , debe ser:

Código Delphi [-]
if State*[gdSelected, gdFocused] <> [] then

es decir, si la intersección de State con [gdSelected, gdFocused] no es vacía, o sea, si hay algo en la intersección de State y [gdSelected, gdFocused].

Es una forma de abreviar:

Código Delphi [-]
if (gdSelected in State) or (gdFocused in State) then

// Saludos
Responder Con Cita
  #5  
Antiguo 11-12-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Gracias por la explicación.

Saludos
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #6  
Antiguo 12-12-2006
JULIOCTORRESG JULIOCTORRESG is offline
Miembro
 
Registrado: sep 2006
Posts: 58
Poder: 18
JULIOCTORRESG Va por buen camino
bien muchas gracias ....

ahora se presentan cosas nuevas pero con esas si puedo solo ....al menos eso creo.....de nuevo gracias ...
Responder Con Cita
  #7  
Antiguo 13-12-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
¿y cuando salió el asterisco? eso ha salido nuevo hace 1 día según veo.

Juer roman, estas "al día"

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 13-12-2006
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
Ja, ja. Pues simplemente un dia lo necesité y busqué set operators en la ayuda de Delphi. Yo imagino que existen desde Wirth, pues el tipo set ya estaba entonces, creo.

// Saludos
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
Pintar un Grid JULIOCTORRESG Gráficos 1 03-11-2006 22:00:37
Me falta el .dcu Fita Varios 2 15-09-2005 03:26:36
Algo falta para activar el timer. Antuan Varios 3 16-08-2005 14:56:52
Pintar una casilla de un string grid davidgaldo Varios 2 22-06-2005 16:48:13
Es algo importante ejecución de .exe y algo más ayúdenme kakesoft Varios 5 02-05-2005 10:01:14


La franja horaria es GMT +2. Ahora son las 22:01:22.


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