FoxPro/Visual FoxPro - Color en FILA de Grilla

   
Vista:

Color en FILA de Grilla

Publicado por Ruben Dario (56 intervenciones) el 18/01/2015 22:57:01
Buenas noches

Amigos necesito saber como puedo poner color a una fila entera de una grilla. ya busque por todo internet y no logro hacer.

muchas gracias
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

Color en FILA de Grilla

Publicado por Saul (676 intervenciones) el 19/01/2015 04:39:19
Hola Ruben
hace una pantalla donde tengas una grid, de 4 columnas.
y pones este codigo..
Claro esta que tienes que tener una tabla en esta caso _Busqueda
y a la cual para llenar el Grid llamas este metodo que te estoy pasando..


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
WITH ThisForm.grdBusqueda 		 &&establecemos las propiedades del grid
	.columncount		= 4		 &&indica el numero de columnas
	.readonly			=.T.	 &&solo lectura
	.allowheadersizing	=.T.
	.allowrowsizing		=.T.
	.recordsource		= "_Busqueda"
 
	.Left 				= 5		 			&& Ajustar posicion de la Grid
	.Forecolor 			= RGB(0,0,0)		&& Texto en Negro
	.GridLineColor 		= RGB(176,230,255) 	&& Color de las lineas que separan las celdas
	.Highlight 			= .T. 				&& La celda aparece selecionada
	.HighlightBackColor = RGB(182,202,234) 	&& Color de la Fila Selecionada
	.HighlightStyle 	= 2 				&& Si la fila esta resaltada, permanece resaltada cuando el usuario cambia el enfoque a otro control del formulario
	.RecordSourceType 	= 1
	.column1.ControlSource = "numero_cpc"
	.column2.ControlSource = "fecha_cpc"
	.column3.ControlSource = "Proveedor"
	.column4.ControlSource = "Factura"
 
	.column1.header1.caption = "No. Documento"
	.column2.header1.caption = "Fecha"
	.column3.header1.caption = "Proveedor"
	.column3.header1.caption = "Factura"
 
	FOR grdNegrit=1 TO 4
		ncol = "column"+ALLTRIM(STR(grdNegrit))+"."
		.&ncol.header1.FontBold  =.T.
		.&ncol.header1.Alignment = 2  	&&Alinea Centrado
	ENDFOR
 
	.column1.Width = 111
	.column2.Width = 95
	.column3.Width = 440
	.column4.Width = 159
 
	.allowcellselection=.f.
	.setfocus
	.Refresh
ENDWITH


Espero y te sirva suerte me comentas ya sabes ;)
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

Color en FILA de Grilla

Publicado por ruben (56 intervenciones) el 19/01/2015 17:46:15
Estimado Saul gracias por tu respuesta

lo que necesito es primero
Capturo el color: lcDnBackColor=GetColor

luego le asigno ese color a la grilla : thisform.pageframe1.page1.gridordenable1.SetAll("DynamicBackColor",lcDnBackColor,"Column")


Todo esto desde un boton, pues lo que necesito es que al seleccionar esa fila se pongo del color que elija

Este me da un error no se donde esta mal
Saludos
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
Imágen de perfil de Marcos

Color en FILA de Grilla

Publicado por Marcos (11 intervenciones) el 20/01/2015 18:28:30
Este es un ejemplo que viene en VFP, en la ayuda que corresponde a DynamicBackColo. Yo le hice unos cambios para mostrar cómo es que podemos poner color a una sola fila. Lo demás es de seguir jugando con las condiciones, colores y variantes de acuerdo a lo que necesites. Para probarlo sólo copia y pega el código en un programa, lo ejecutas y listo.

PUBLIC lnRecno

CLOSE ALL && Close tables and databases
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer IN 0 && Opens Customer table
frmMyForm = CREATEOBJECT('Form') && Create a Form
frmMyForm.AddObject('cmdCommand1','cmdMyCmdBtn') && Add Command button
frmMyForm.AddObject('grdGrid1','Grid') && Add Grid control
frmMyForm.grdGrid1.Left = 25 && Adjust Grid position
frmMyForm.grdGrid1.Visible = .T. && Grid control visible
frmMyForm.cmdCommand1.Visible =.T. && "Quit" Command button visible
frmMyForm.grdGrid1.Column1.Header1.Caption = 'Customer ID'
frmMyForm.SHOW && Display the form
READ EVENTS && Start event processing

DEFINE CLASS cmdMyCmdBtn AS CommandButton && Create Command button
Caption = '\<Color' && Caption on the Command button
Cancel = .T. && Default Cancel Command button (Esc)
Left = 125 && Command button column
Top = 210 && Command button row
Height = 25 && Command button height
PROCEDURE Click
lnRecno=RECNO()
frmMyForm.grdGrid1.SetAll("DynamicBackColor", ;
"IIF(RECNO()<>lnRecno, RGB(255,255,255) ;
, RGB(0,255,0))", "Column") && Alternate white and green records
frmMyForm.grdGrid1.Refresh()
ENDDEFINE
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