Como agrego un CHECK a una columna GRID

20/01/2004 - 01:29 por Lucas Grandi | Informe spam
Hola foro

Como agrego un CHECK a una columna de un GRID en tiempo de diseño. Por
programacion es facil, solo utilizo el comando ADDOBJECT y listo. Pero tengo
algunos formularios de muestra y en ellos tengo grids donde en una de sus
columnas tiene PREDEFINO un CHECK en vez de un TEXT.

Como se logra esto?

Gracias
Lucas
 

Leer las respuestas

#1 Axel Olivares
20/01/2004 - 04:29 | Informe spam
Hola Lucas
Lo siguiente es tomado del Help de Microsoft Manual del Programador de VFP
6.0, parte 3 y capitulo 10, lo "recorte y pege" solo para efectos de
referencia. (espero no estar infringiendo ninguna ley de derechos de autor).

Axel Olivares
Mostrar controles en columnas de cuadrícula
Además de mostrar datos de campos en una cuadrícula, puede tener controles
en las columnas de una cuadrícula para poder mostrar a un usuario cuadros de
texto, casillas de verificación, controles desplegables, controles numéricos
y otros tipos de controles incrustados. Por ejemplo, si tiene un campo
lógico en una tabla, cuando ejecute el formulario un usuario podrá
distinguir qué valores de registro son verdaderos (.T.) y cuáles son falsos
(.F.) si ve si la casilla de verificación está activada. Cambiar el valor es
tan fácil como activar o desactivar la casilla de verificación.

Puede agregar controles a columnas de la cuadrícula de forma interactiva en
el Diseñador de formularios o bien puede escribir código para agregar los
controles a las columnas en tiempo de ejecución.

Para agregar de forma interactiva controles a una columna de cuadrícula

1.. Agregue una cuadrícula a un formulario.


2.. En la ventana Propiedades, establezca la propiedad ColumnCount de la
cuadrícula como el número de columnas deseadas.
Por ejemplo, escriba 2 para una cuadrícula de dos columnas.

3.. En la ventana Propiedades seleccione la columna primaria para el
control en el cuadro Objeto.
Por ejemplo, seleccione Columna1 para agregar un control a Columna1. El
borde de la cuadrícula cambiará para indicar que está modificando un objeto
contenido cuando seleccione la columna.

4.. Seleccione el control deseado en la barra de herramientas Controles de
formularios y haga clic en la columna primaria.
El nuevo control no aparecerá ahora en la columna de cuadrícula dentro del
Diseñador de formularios, pero será visible en tiempo de ejecución.

5.. En la ventana Propiedades asegúrese de que el control se muestra
sangrado bajo la columna primaria en el cuadro Objeto.
Una casilla de verificación agregada a una columna de cuadrícula

* Aqui va un grafico, que por normas del grupo No se envia

Si el nuevo control es una casilla de verificación, establezca la
propiedad Caption de la casilla como " " y la propiedad Sparse de la columna
como falso (.F.).

6.. Establezca la propiedad ControlSource de la columna primaria como el
campo de tabla deseado.
Por ejemplo, el ControlSource de la columna en la siguiente ilustración es
products.discontinu de Testdata.dbc en el directorio ...\Samples\Vfp98\Data
de Visual Studio.

7.. Establezca la propiedad CurrentControl de la columna primaria como el
nuevo control.
Cuando ejecute el formulario, el control aparecerá en la columna de
cuadrícula.

La casilla de verificación se muestra en la columna en tiempo de ejecución.

Sugerencia Si desea poder centrar una casilla de verificación en una
columna de cuadrícula, cree una clase de contenedor, agregue una casilla de
verificación a la clase de contenedor y ajuste la posición de la casilla en
dicha clase. Agregue la clase de contenedor a la columna de cuadrícula y
establezca la propiedad ControlSource de la casilla de verificación como el
campo deseado.

Para quitar controles de columnas de cuadrícula en el Generador de
formularios

1.. En el cuadro Objeto de la ventana Propiedades, seleccione el control.


2.. Active el Diseñador de formularios.
Si la ventana Propiedades está visible, el nombre del control aparecerá en
el cuadro Objeto.

3.. Presione la tecla supr.
También puede agregar controles a una columna de cuadrícula con el método
AddObject en el código.

Para agregar controles a una columna de cuadrícula mediante programa

a.. En el evento Init de la cuadrícula, use el método AddObject para
agregar el control a la columna de cuadrícula y establezca la propiedad
CurrentControl de la columna.
Por ejemplo, las líneas de código siguientes del evento Init de una
cuadrícula agregan dos controles a una columna de cuadrícula y especifican
una de ellas como el control actual:

THIS.grcColumn1.AddObject("spnQuantity", "SPINNER")
THIS.grcColumn1.AddObject("cboQuantity", "COMBOBOX")
THIS.grcColumn1.CurrentControl = "spnQuantity"
* Las siguientes líneas de código aseguran que el control está visible
* y se muestra en cada fila de la cuadrícula
THIS.grcColumn1.spnQuantity.Visible = .T.
THIS.grcColumn1.Sparse = .F.

En este ejemplo, Column1 tiene tres valores actuales de control posibles:

a.. spnQuantity
b.. cboQuantity


c.. Text1 (el control predeterminado)
Nota Las propiedades establecidas a nivel de cuadrícula no se transfieren
a las columnas o los encabezados. Del mismo modo, deberá establecer
directamente las propiedades de los encabezados y los controles contenidos,
ya que no heredan sus propiedades de los valores a nivel de columna.

Sugerencia Para presentar mejor los cuadros combinados en columnas de
cuadrícula, establezca las siguientes propiedades de cuadro combinado:

BackStyle = 0 && Transparente
Margin = 0
SpecialEffect = 1 && Plano
BorderStyle = 0 && Ninguno

"Lucas Grandi" escribió en el mensaje
news:
Hola foro

Como agrego un CHECK a una columna de un GRID en tiempo de diseño. Por
programacion es facil, solo utilizo el comando ADDOBJECT y listo. Pero


tengo
algunos formularios de muestra y en ellos tengo grids donde en una de sus
columnas tiene PREDEFINO un CHECK en vez de un TEXT.

Como se logra esto?

Gracias
Lucas


Preguntas similares