holas, buenas tardes a todos.
soy nuevo en el foro, entré hoy, y vengo solicitando su inestimable ayuda :)
yo estoy haciendo un programita, y uso muchas variables.
este archivo, tiene dos botones, que van a una parte a, y a una parte b.
lo que me sucede, es que cuando va a la parte a, funciona bien, pero cuando va con el segundo botón a la parte ve, los datos que pido con los imput que guardo en variables se guardan bien, pero después cuando quiero realizar una suma, con los datos que pedí, pongo una variable, para guardar el resultado de la suma, después la suma en sí utilizando las variables de los imputs, como hice en la parte a, y en esa línea me dice que la variable no ha sido declarada, y faltan dos líneas para que termine la ejecución.
lo que me di cuenta, es que si copio la parte b individualmente sí funciona, pero junto a la primera parte no.
desde ya muchas gracias a todo el que me pueda ayudar :)
saludos.
muchas variables?
Re: muchas variables?
Muestra el código para ver mejor lo que sucede.
Saludos
Saludos
- ............................................
......................................
Re: muchas variables?
el código es este:
Opt("GUIOnEventMode", 1)
$mainwindow=GUICreate("Calculadora de estadio ", 200, 100)
GUICtrlCreateLabel("Elige lo que deseas hacer:", 30, 10)
$calcularlugares= GUICtrlCreateButton("Calcular la cantidad de lugares", 40, 30, 50)
GUICtrlSetOnEvent($calcularlugares, "calcularlugares")
$salirprograma= GUICtrlCreateButton("Salir del programa", 70, 50, 60)
GUICtrlSetOnEvent($salirprograma, "salirprograma")
While 1
WEnd
Func calcularlugares()
$jenerales=InputBox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de jenerales", "")
$preferentes=inputbox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de preferentes", "")
$tribunas=inputbox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de tribunas", "")
$palcos=inputbox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de palcos", "")
$entradas1=$jenerales*30
$entradas2=$preferentes*70
$entradas3=$tribunas*100
$entradas4=$palcos*300
$entradastotales=$entradas1+$entradas2+$entradas3+$entradas4
msgbox(0, "El valor total es:", $entradastotales & " pesos")
EndFunc
Func salirprograma()
exit
EndFunc
y esta es la segunda parte, la que no puedo hacer que funcione si la llamo e intento realizar la suma del final si está junto al código de arriba.
func lugares()
GUICtrlCreateLabel("ingresa la cantidad de lugares en la zona de jenerales:", 30, 10)
$jenerales1=GUICtrlCreateInput("", 10, 35, 300, 20)
GUICtrlCreateLabel("ingresa la cantidad de lugares en la zona de tribunas:", 30, 10)
$preferentes1=GUICtrlCreateInput("", 10, 35, 300, 20)
$entradas123= GUICtrlCreateButton("Obtener el valor total", 40, 30, 50)
GUICtrlSetOnEvent($entradas123, "valortotal")
EndFunc
Func valortotal()
$entradascompletas=$jenerales1+$preferentes1
msgbox(0, "El valor total es:", $entradascompletas & " pesos")
EndFunc
Opt("GUIOnEventMode", 1)
$mainwindow=GUICreate("Calculadora de estadio ", 200, 100)
GUICtrlCreateLabel("Elige lo que deseas hacer:", 30, 10)
$calcularlugares= GUICtrlCreateButton("Calcular la cantidad de lugares", 40, 30, 50)
GUICtrlSetOnEvent($calcularlugares, "calcularlugares")
$salirprograma= GUICtrlCreateButton("Salir del programa", 70, 50, 60)
GUICtrlSetOnEvent($salirprograma, "salirprograma")
While 1
WEnd
Func calcularlugares()
$jenerales=InputBox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de jenerales", "")
$preferentes=inputbox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de preferentes", "")
$tribunas=inputbox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de tribunas", "")
$palcos=inputbox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de palcos", "")
$entradas1=$jenerales*30
$entradas2=$preferentes*70
$entradas3=$tribunas*100
$entradas4=$palcos*300
$entradastotales=$entradas1+$entradas2+$entradas3+$entradas4
msgbox(0, "El valor total es:", $entradastotales & " pesos")
EndFunc
Func salirprograma()
exit
EndFunc
y esta es la segunda parte, la que no puedo hacer que funcione si la llamo e intento realizar la suma del final si está junto al código de arriba.
func lugares()
GUICtrlCreateLabel("ingresa la cantidad de lugares en la zona de jenerales:", 30, 10)
$jenerales1=GUICtrlCreateInput("", 10, 35, 300, 20)
GUICtrlCreateLabel("ingresa la cantidad de lugares en la zona de tribunas:", 30, 10)
$preferentes1=GUICtrlCreateInput("", 10, 35, 300, 20)
$entradas123= GUICtrlCreateButton("Obtener el valor total", 40, 30, 50)
GUICtrlSetOnEvent($entradas123, "valortotal")
EndFunc
Func valortotal()
$entradascompletas=$jenerales1+$preferentes1
msgbox(0, "El valor total es:", $entradascompletas & " pesos")
EndFunc
Re: muchas variables?
Es porque no declaras las variables. debes declararlas como globales si las vas a usar en otra funcion. Trata de ordenar mas el codigo. ahi te dejo un poco arreglado.
Saludos
Código: Seleccionar todo
Opt("GUIOnEventMode", 1)
Global $jenerales1, $preferentes1
Global $mainwindow = GUICreate("Calculadora de estadio ", 200, 100)
GUICtrlCreateLabel("Elige lo que deseas hacer:", 30, 10)
Global $calcularlugares = GUICtrlCreateButton("Calcular la cantidad de lugares", 40, 30, 50)
GUICtrlSetOnEvent($calcularlugares, "calcularlugares")
Global $salirprograma = GUICtrlCreateButton("Salir del programa", 70, 50, 60)
GUICtrlSetOnEvent($salirprograma, "salirprograma")
GUISetOnEvent(-3, "Salir")
GUISetState(@SW_SHOW, $mainwindow)
While 1
WEnd
Func Salir()
Exit
EndFunc ;==>Salir
Func calcularlugares()
local $jenerales = InputBox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de jenerales", "")
local $preferentes = InputBox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de preferentes", "")
local $tribunas = InputBox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de tribunas", "")
local $palcos = InputBox("Calculadora de estadio", "Ingresa la cantidad de lugares en la zona de palcos", "")
local $entradas1 = $jenerales * 30
local $entradas2 = $preferentes * 70
local $entradas3 = $tribunas * 100
local $entradas4 = $palcos * 300
local $entradastotales = $entradas1 + $entradas2 + $entradas3 + $entradas4
MsgBox(0, "El valor total es:", $entradastotales & " pesos")
EndFunc ;==>calcularlugares
Func salirprograma()
Exit
EndFunc ;==>salirprograma
Func lugares()
GUICtrlCreateLabel("ingresa la cantidad de lugares en la zona de jenerales:", 30, 10)
local $jenerales1 = GUICtrlCreateInput("", 10, 35, 300, 20)
GUICtrlCreateLabel("ingresa la cantidad de lugares en la zona de tribunas:", 30, 10)
local $preferentes1 = GUICtrlCreateInput("", 10, 35, 300, 20)
local $entradas123 = GUICtrlCreateButton("Obtener el valor total", 40, 30, 50)
GUICtrlSetOnEvent($entradas123, "valortotal")
EndFunc ;==>lugares
Func valortotal()
$entradascompletas = $jenerales1 + $preferentes1
MsgBox(0, "El valor total es:", $entradascompletas & " pesos")
EndFunc ;==>valortotal
- ............................................
......................................
Re: muchas variables?
estupendo, se solucionó el problema.
pero hay un detalle...
copié el código que me diste, pero cuando quiero ir a la segunda parte y realizar la suma, en el mensaje me aparece 0 pesos. y me parece raro que no tome los números que pongo en los cuadritos.
desde ya muchas gracias,
saludos.
pero hay un detalle...
copié el código que me diste, pero cuando quiero ir a la segunda parte y realizar la suma, en el mensaje me aparece 0 pesos. y me parece raro que no tome los números que pongo en los cuadritos.
desde ya muchas gracias,
saludos.
Re: muchas variables?
Pues tienes que llamar la función lugares()
mejora la estructura del programa y veras que se te hace mas fácil.
Saludos
mejora la estructura del programa y veras que se te hace mas fácil.
Saludos
- ............................................
......................................