Posteado por: jsbsan | 8 Noviembre 2009

Variables Globales y controles públicos: explicación y ejemplo

Tras la pregunta de Emil Colina, he realizado esta entrada para explicar el uso de variables globales, ademas de un pequeña anotación sobre hacer que los controles sean públicos (se puedan leer sus valores desde otros formularios del que fueron creados).

Bien empiezo:

1) Lo primero que debes hacer es añadir un modulo a tu programa, donde contenga todas las variables que quieran que sean accesibles desde todas las partes del programa (es para ser ordenados y las encuentres facilmente). Yo cree un modulo llamado “var“, donde las tengo todas definidas.

2) Dentro de estre modulo, defines las variables:
‘——————————————-fechas———————–
PUBLIC fechaincluida AS Date

Pantallazo-GestionAlmacen - Gambas 2-1

3) Ya desde cualquier parte del programa puedes acceder a esa variable de la siguiente manera:

var.fechaincluida

para asignarle un valor, cambiarlo, o leerlo

4)Si vas a leer datos de controles (textbox, etc) desde otros formularios del que esta creado el control, estos deben de ser publicos. Esto lo haces en el menu:
Proyecto/Propiedades (ctrl+P)/Opciones
tener en las Opciones del Proyecto como “si” en el apartado de compilacion los controles de formulario

Pantallazo-Propiedades del proyecto - GestionAlmacen

Para mas detalles te explico como lo he hecho en el programa Gestion-Almacen:
Si abres el modulo var, en la linea 127, defino la variable fechaincluida

Si abres el formulario Finformes,

En la linea 1663, asignamos a una variable local (fecha_dia) el resultado de la funcion Preguntarhastafecha()

fecha_dia = Preguntarhastafecha()

Pantallazo-GestionAlmacen - Gambas 2

En la linea 991, se define una funcion “Preguntarhastafecha() AS Date”, que carga el formulario de Ffechadia

PUBLIC FUNCTION Preguntarhastafecha() AS Date
‘leer la fecha de trabajo actual del formulario FMain.LabelFechaTrabajoInforme.text
var.fechaincluida = Val(FMain.LabelFechaTrabajoInforme.text)
‘carga el formulario Ffechadia
Ffechadia.ShowModal
‘devuelve la fechaincluida
RETURN var.fechaincluida

END

Pantallazo-GestionAlmacen - Gambas 2-2

Si abres el formulario “Ffechadia”, veras como se encarga de que la fecha que elija el usuario, la guarde en var.fechaincluida

Pantallazo-GestionAlmacen - Gambas 2-3

Pantallazo-GestionAlmacen - Gambas 2-4

Bueno, asi termino la explicación, espero que os sea util.

Un saludo.


Respuestas

  1. holaaa julio,, listo ya logre hacerlo!! muchas gracias por tu ayuda me sirvio de mucho.. saludos

  2. Comentario…

    [..]Articulo Indexado Correctamente[..]…


Dejar una respuesta

Su respuesta:

Categorías