FoxPro/Visual FoxPro - Al ejecutar el grid me cambia los tamaños de las columnas

   
Vista:

Al ejecutar el grid me cambia los tamaños de las columnas

Publicado por Kevin Lopez (10 intervenciones) el 29/10/2015 16:07:03
Hola buen día foxeros tengo un inconveniente con un grid le designo los tamaños a las columnas en el editor pero al ejecutar el grid me cambia los tamaños de las columnas para obtener los datos los genero con un recordsource que importa datos de un engine mysql.... me podrían ayudar por favor....

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

Al ejecutar el grid me cambia los tamaños de las columnas

Publicado por Juan R. (100 intervenciones) el 29/10/2015 19:07:48
Buenas Kevin

Has probado a mirar la propiedad "Anchor" a ver cómo la tienes?

Un saludo
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

Al ejecutar el grid me cambia los tamaños de las columnas

Publicado por Kevin Lopez (10 intervenciones) el 29/10/2015 19:56:07
Gracias por responder Juan, pues ya lo revise y lo tengo en 0, te comentó lo extraño es lo siguiente yo en el editor configuro el ancho de cada columna de esta forma

Column1--*----Column2- *-----------------------------Column3 ----------------------------------- *----Column 4-----*-----Column5--- *
------------- *----------------- *----------------------------------------------------------------------------- *---------------------- *----------------------*


y al momento de ejecuta el formulario con el grid me lo genera de la siguiente manera

Column1--*----Column2- *----------------Column3 ----------------- *----Column 4-----*-----Column5--- *
------------- *----------------- *----------------------------------------------- *---------------------- *----------------------*

y aunque le cambie la propiedad anchor sigue generando igual
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

Al ejecutar el grid me cambia los tamaños de las columnas

Publicado por Saul (676 intervenciones) el 29/10/2015 22:58:40
Hola Kevin:

Te dejo lo que hago yo y si tienes toda la razón, regularmente vfp cambia no se porque y mas cuando viene de resultados externos como vistas SQL o MYSQL yo lo resolví de esta manera me cuenta a ver como te va.

1
2
3
4
5
6
7
8
9
10
11
12
13
xCursor = ALLTRIM(_ccodigous) + SYS(3)
 
*esta es un grid que llamo con parametros pero solo es ejemplo.
 
Thisform.datofiltro = "Algo"
 
*- Arma cursor para buscar el campo esfecifico
lcSQLcommand = "SELECT "+thisform.codigo+" As Codigo, "+thisform.nombre+" As Nombre FROM "+thisform.tabla +" WHERE "+ Thisform.datofiltro
 
*This.carchivo
=SQLEXEC(CnxSde ,lcSQLcommand,xCursor)
 
Thisform.LLenaGrid()

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
*Metodo en tu misma form llamado LLenaGrid()
 
WITH ThisForm.grdBusqueda 		 &&establecemos las propiedades del grid
	.columncount		= 2		 &&indica el numero de columnas
	.readonly			=.T.	 &&solo lectura
	.allowheadersizing	=.T.
	.allowrowsizing		=.T.
	.recordsource		= xCursor
 
	.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 = "Codigo"
	.column2.ControlSource = "Nombre"
 
	.column1.header1.caption = "Código"
	.column2.header1.caption = "Nombre"
 
	FOR grdNegrit=1 TO 2
		ncol = "column"+ALLTRIM(STR(grdNegrit))+"."
		.&ncol.header1.FontBold  =.T.
		.&ncol.header1.Alignment = 2  	&&Alinea Centrado
	ENDFOR
 
	.column1.Width = 179
	.column2.Width = 391
 
	.allowcellselection=.f.
	*.setfocus
	*.Refresh
ENDWITH
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 Abel

Al ejecutar el grid me cambia los tamaños de las columnas

Publicado por Abel (23 intervenciones) el 02/11/2015 14:25:00
Hola Kevin, tuve ese problema muchas veces y logré resolverlo de la siguiente manera:

Teniendo que el grid se llama grdDehasa, lo primero que hago antes de pasar valor RecordSource es limpiarlo... y es en realidad solo ésta la clave; cambia el tamaño de las celdas cuando le cambias el nombre, sin embargo si estuviese vacío no cambiaría el tamaño al pasarle un nuevo valor a RecordSource.

Ejemplo de un código que tengo..

Thisform.grdDehasa.RecordSource =""
select Clientes && seleccionar tabla ordenada de Clientes.
Seek csrClientes.ClienteID

&&/ * Crear Cursor ordenado de datos Debe, haber y Saldo.
Select Importe As Debe, 0.00 As Haber, Importe As Saldo, ;
Fecha, svDesde, ComprobID, ClienteID, Precopen, ;
RECNO() As Posicion, 'DEUDA' As enTabla ;
FROM Cliente ;
WHERE Clctacte.ClienteID=lcClienteID ;
ORDER By ClienteID, Fecha ;
INTO Cursor csrSaldos ;
READWRITE

Thisform.grdDehasa.RecordSource ="csrSaldos"

Habrás notado que primero limpié RecordSource y luego cuando hizo los cálculos ingresé el nuevo valor del mismo.
Espero te sea de utilidad.
Un saludo.
Abel
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

Al ejecutar el grid me cambia los tamaños de las columnas

Publicado por Kevin Lopez (10 intervenciones) el 02/11/2015 17:02:04
Muchas gracias a todos por su tiempo, efectivamente Abel como tu lo indicas de esa manera lo logre resolver y me funciona muy bien. Gracias a todos por su aporte, 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