definicion variables

juanolas
11 de Septiembre del 2003
Quisiera saber como tengo que hacer para definir variables en un modo de forma publica y usarlas en
cualquier parte de la aplicacion

R-ortega
11 de Septiembre del 2003
tienes que declararlas en un modulo de las siguiente manera

global [nombre de la variable] as [tipo de variable]

Oscar
11 de Septiembre del 2003
Que tal Junolas

Insisto, si definis las variables publicas en las declaraciones generales y dentro de un procedimiento la volves a definir, la variable dentro del procedimiento es privada dentro del procedimiento.
Entiende esto , la arquitectura del proyecto seria como un edificio: la terraza y los departamentos, desde el balcon de los departamentos puedes ver la terraza, hay alguien hay arriba llamado juan pero si dentro del departamento hay otro juan... quien responde primero... pues juan del departamento.....

Vamos a echar codigo a esto (para que no me tilden de loco)

tengo 5 botones de comando, 1 variable publica, 1 variable privada ( de nombre igual que la publica ) y una variable statica ( ya que estamos).....ademas de un label

en las declaraciones generales (terraza) tengo.....


Public Numero as variant


Private Sub comand1_click()
numero = numero + 5 * 2
label1.caption = "Numero Publico vale : " & numero
End sub

Private Sub comand2_click()
numero = numero * numero
label1.caption = "Multiplico Numero Publico vale : " & numero
End sub

Private Sub comand3_click()
Dim numero as variant
numero = numero + 5 * 2
label1.caption = "Numero Privado vale : " & numero
End sub

Private Sub comand4_click()
static numero as variant
numero = numero + 5 * 2
label1.caption = "Numero Statico vale : " & numero
End sub

Private Sub comand5_click()
numero = numero - Numero
label1.caption = "Nuevo valor de Numero : " & numero
End sub


Bien un poco largo creo, pero util....cuanda haga click en coman1 subira de 10 en 10 , cuando hago clik en comand2 multiplicara el valor, sin que se hayan enterado comand3 y 4 , ecepto comand 5 que puede verlos y ademas resta numero- numero asea pondra en cero sin que se enteren los otros (com 3 y 4).
El estatico no pierde el valor entre llamadas aunque pueda ser visto o no desde otro lado, conserva su valor, con diferentes valores si existe en diferentes lugares.

Y el valor de comand3, valor privado de numero publico, no le importara lo que ande haciendo su hermano gemelo publico y tendra el valor que le asignemos (dos variables con mismo nombre y distinto valor ????... pues si )

Bien... lo cierto es que si detallo mas voy a terminar haciendo " Una biblia " de esta pagina.
Copien el codigo (creo que no tiene errores) y pegenlo en un formulario con 5 botones de comando y un label

Espero que les deje mas claro esto de las definiciones y el alcanze

Suerte a todos y no se ofenda quien escribio antes (Juan), no es personal, solo intente ser claro

Saludos a todos y A QUEMAR NEURONAS!!!!


txola
11 de Septiembre del 2003

Public nombrevariable as tipovariable

Ejemplo: Public nombre as string

Oscar
11 de Septiembre del 2003
Es publica cuandop se declara en las declaraciones de un protecto cerca del Option explicit


Dim variablePub as string

Private sub Coman1_Click()
Dim variablePub as string

Esta ultima esta dentro del modulo de comandbuton 1 y es privada aunque haya una publica opta por la declaracion interna que logicamente puede almacenar un valor distinto que la publica

Suerte

LUIS
11 de Septiembre del 2003
Hola
Si usas public variable la podras hacer pública en cualquier parte del formulario sin importar que estés en cualquier función o subrutina del mismo...

Sin embargo si quieres hacer una variable pública y que se pueda utilizar en todos tus formularios te recomiendo que agregues un modulo...

Proyecto
Agregar modulo

y ahi escribas tus variables publicas

de la misma forma

Public variable as tipo

de esta forma si afectaran a los formularios que tengas en tu aplicación, de la forma anterior solo afectaran a todas las funciones y/o subrutinas del formulario propiamente dicho