definicion variables
Quisiera saber como tengo que hacer para definir variables en un modo de forma publica y usarlas en
cualquier parte de la aplicacion
cualquier parte de la aplicacion
tienes que declararlas en un modulo de las siguiente manera
global [nombre de la variable] as [tipo de variable]
global [nombre de la variable] as [tipo de variable]
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!!!!
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!!!!
Public nombrevariable as tipovariable
Ejemplo: Public nombre as string
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
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
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
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
