Página 1 de 1

manejo de formularios

Publicado: 02 Abr 2010, 04:50
por taoru
hola, estoy desarrollando una aplicación, que como primer paso te pide login antes de dejarte acceder a las opciones.
bien, lo que hice es lo siguiente:
1. desarrollar form1, el form que te pide login.
2. hacer la verificación de esos datos.
3. desarrollar form 2, la ventana principal de la aplicación.

form 2 está dentro de una función.

lo que hago en el paso 2, es verificar el login, y si es válido (compruevo con un if) llamo a la función y creo el form 2.
mi pregunta es:

como destruyo el form1 para solo mostrar en pantalla el form2?.
porque cuando creo el form2 me quedan abiertas 2 ventanitas del mismo programa, y la ventanita del login no se cierra.

hice un resumen del código, y aquí dejo una parte para que vean el funcionamiento:

#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <GuiMenu.au3>

Func user()
$leyenda="Client v0.3 beta"
Local $form1,$hPublic, $hOption, $hHelp, $hMain
$Form1 = GUICreate("Jimobi Client", 633, 454, 193, 125)
$Button2 = GUICtrlCreateButton("Ayuda", 96, 200, 137, 81, 0)
$Input1 = GUICtrlCreateInput($leyenda, 344, 56, 225, 21)
GUISetState(@SW_SHOW)

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $button2 ; ayuda:
MSGBox(0, "Help", "Si requiere ayuda para manejar este software nos puede escribir un mail!")
EndSwitch

; If $msg = $hMain Then MSGBox(0, "Help", GUICtrlRead( $hMain, 1))
WEnd
EndFunc


$Form1 = GUICreate("Entrar En el mundo", 280, 130, -1, -1)

$ButtonOk = GUICtrlCreateButton("&Entrar", 54, 88, 75, 25, 0)
GUISetState(@SW_SHOW)


While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $ButtonOk
; validamos user:
user()
EndSwitch
WEnd

gracias!

Re: manejo de formularios

Publicado: 03 Abr 2010, 13:34
por taoru
hola!. encontré la forma, destruyo el formulario con la función GUIDelete.

dejo aqui mi ejemplo correjido, así el que pase por esto, lo tiene posteado aqui:
#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <GuiMenu.au3>

Func user()
$leyenda="Client v0.3 beta"
Local $form1,$hPublic, $hOption, $hHelp, $hMain
$Form1 = GUICreate("Jimobi Client", 633, 454, 193, 125)
$Button2 = GUICtrlCreateButton("Ayuda", 96, 200, 137, 81, 0)
$Input1 = GUICtrlCreateInput($leyenda, 344, 56, 225, 21)
GUISetState(@SW_SHOW)

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $button2 ; ayuda:
MSGBox(0, "Help", "Si requiere ayuda para manejar este software nos puede escribir un mail!")
EndSwitch

; If $msg = $hMain Then MSGBox(0, "Help", GUICtrlRead( $hMain, 1))
WEnd
EndFunc


$Form1 = GUICreate("Entrar En el mundo", 280, 130, -1, -1)

$ButtonOk = GUICtrlCreateButton("&Entrar", 54, 88, 75, 25, 0)
GUISetState(@SW_SHOW)


While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $ButtonOk
; validamos user:
GUIDelete($Form1)
user()
EndSwitch
WEnd
gracias, saludos!