FoxPro/Visual FoxPro - Colorear una fila de grid

   
Vista:

Colorear una fila de grid

Publicado por Tori (15 intervenciones) el 18/08/2008 23:04:36
Hola amigos de la web
He conseguido colorerar filas de un grid dependiendo del valor que tengan, etc.
Lo que quiero es que en un grid, cuando el usuario haga click sobre el registro cambiel el color, sin depender de su valor, solo cuando se situe en el registro
Lo único que conseguí es que me coloree la celda, no la fila completa
Como puedo hacerlo?
Gracias

Tori
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Colorear una fila de grid

Publicado por Humberto (83 intervenciones) el 18/08/2008 23:20:58
Entidendo tu pregunta, pero quiero ver si la comprendo.

Vos queres que al hacer clic en el registro del in Grid se coloree el registro completo. Como pasa en el caso de un Listbox ¿Eso es lo que buscas?
Si es eso estaré atento porque yo también tengo la misma inquietud. Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por Tori (15 intervenciones) el 18/08/2008 23:28:51
Si, eso es lo que busco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por neo (1601 intervenciones) el 19/08/2008 03:11:41
en el evento init del grid:

thisform.grid1.setall("dynamicbackcolor","iif(padron.registro='SI',rgb(0,0,255),rgb(0,0,0))","column")

Revisalo y me cuentas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por Humberto (83 intervenciones) el 19/08/2008 04:21:35
Hola Neo

Me metí en esta pregunta porque en mi caso también tenía interés personal en la respuesta.

Lo probé pero no me funcionó. Pienso que es porque me esta faltando responder en algún lugar del GRID lo que vos definíste como PADRON.REGISTRO="SI". De mi parte gracias por la respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por neo (1601 intervenciones) el 20/08/2008 16:46:36
Si, ese es el punto, definir la condicion en la tabla o datos que va a mostrar el grid y si la condicion es verdadera colorea ya sea las letras o la fila, segun lo que necesites.

El caso: "PADRON:REGISTRO="SI" estoy tomando la condicion de que:

todas las filas de la tabla "PADRON" en que el campo "REGISTRO" se encuentre un "SI" me coloree la fila a mostrar en el grid.

Suerte►
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por goyohidalgo (1 intervención) el 02/11/2016 00:00:25
La colocan el el AfterrowColChange del Grid

Esta Rutina te permite colocar color a la columna en forma intermedia

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
*----Color a columna-------
 
*---- propiedades columna-------
n=0
FOR i=1 TO this.Parent.grid1.ColumnCount
 
IF i=1
   c_colgrid ='Column'     +TRANSFORM(i)
   i=i-1
ELSE
   n=(i)+1
   c_colgrid ='Column'     +TRANSFORM(n)   
ENDIF
 
IF n<=this.Parent.grid1.ColumnCount
WITH this.Parent.grid1.&c_colgrid
    .DynamicBackColor='IIF(RECNO()= ThisForm.HitRow, RGB(213,250,253), RGB(242,252,253))'
    .BackColor=RGB(242,252,253)
ENDWITH
ENDIF
i=i+1
ENDFOR
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por Plinio (7771 intervenciones) el 19/08/2008 13:41:11
Si tienes VFP8 o Superior este tiene las propiedades:
highligthstyle
highligthrow, etc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por Tori (15 intervenciones) el 19/08/2008 16:40:31
Gracias a todos por la respuesta pero dos cosas quiero aclarar
Tengo VFP 7.0
Yo quiero que se coloree la fila según le den click con el mouse, sin que se tenga que cumplir ninguna condición. Con el Iif lo uso en otros grid y funicona perfectamente, pero en este caso me muestra todo el contenido de la tabla.
Gracias

Tori
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por Mario (49 intervenciones) el 19/08/2008 19:38:59
Utilizo el siguiente sistema algo primitivo:

Suponemos que el origen de datos del grid es una tabla llamada tuTabla.

En el init del formulario:
PUBLIC registro

En el Init del grid:
This.SetAll('DynamicBackColor','IIF(RECNO("tuTabla") = registro,;
RGB(100,255,255), RGB(255,255,255))', 'Column')

En el GotFocus de Text1 de cada columna del grid:
registro = RECNO(‘tuTabla’)

De esta forma, al entrar en cualquier línea del grid se actualiza la variable pública registro con el número de registro de la tabla, que validará la expresión de cambio de color sólo para esa línea.

Un saludo y suerte,
Mario
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Colorear una fila de grid

Publicado por HELDER MARTINEZ (710 intervenciones) el 20/08/2008 02:10:51
si tienes vfp8 o vfp9, poner las propiedades

1
2
3
4
5
HighLight = .t.
HighLightbackColor = el color que desees
HighLightforecolor =  el color que desees
HighLightRow = .t.
HighLightStyle = 1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

IR AUNA FILA DE UN GRID

Publicado por juan carlos sandoval (2 intervenciones) el 04/10/2016 17:24:50
PARA PODER SELECCOINAR LA FILA DE UN GRID EN VISUAL FOX SE COPIA EL SIGUIENTE CODIGO
en el evento click de un boton puedes probarlo

1
2
3
4
5
6
7
fila = 10
 
SELECT  curLisPunAtencion
GO  fila
thisform.gri1.Click
thisform.gri1.AfterRowColChange
thisform.gri1.Refresh
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar