while - wend ,no responde

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

while - wend ,no responde

Mensaje por iamchavo »

hola gente ,queria preguntarle algo que me esta pasando y nose porque sera
la cosa es que estoy creando un programa donde primero deben escribir una serial y si la escriben bien ya pueden empezar a usar el programa , el problema esta en que pongo la serial y me dice que esta correcta ,hasta ai todo bien, pero despues es como que el programa se traba ai ,no a la siguiente parte , tambien me pasa cuando quiero ponerle a un boton una accion determinada , masomenos algo asi :



Código: Seleccionar todo

#Region ### START Koda GUI section ### Form=

    $oIE = ObjCreate("Shell.Explorer.2")

    GUISetState()

Global $Paused

HotKeySet("{F6}", "TogglePause")



Func TogglePause()

    $Paused = NOT $Paused

    While $Paused

        Sleep (1000)

        ToolTip('Script is "PAUSADO :O"',0,0)

    WEnd

    ToolTip("")

EndFunc



    $Form2 = GUICreate("FACE BLOG", 935, 640, (@DesktopWidth - 1000) / 2, (@DesktopHeight - 600) / 2, BitOR($WS_CLIPSIBLINGS, $WS_CLIPCHILDREN))

    $GUIActiveX = GUICtrlCreateObj ($oIE, 10, 40, 910, 460)



    InetGet("http://i76.photobucket.com/albums/j1/datmos/simple_design_wallpapers_08.jpg",@TempDir&"\timage.jpg")



    $GUI_Button_Back = GUICtrlCreateButton("atras", 10, 550, 100, 30)

    $GUI_Button_Forward = GUICtrlCreateButton("adelante", 120, 550, 100, 30)

    $GUI_Button_Home = GUICtrlCreateButton("inicio", 230, 550, 100, 30)

    $GUI_Button_Stop = GUICtrlCreateButton("Sugerir", 820, 530, 100, 30)

    $GUI_Button_exit = GUICtrlCreateButton("Cerrar", 870, 5, 50, 30)

    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")

    $Button1 = GUICtrlCreateButton("Aceptar", 550, 5, 113, 30, 0)

    GUICtrlSetCursor (-1, 0)

    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")

    $Input1 = GUICtrlCreateInput("              Copie La Serial Aqui",230, 5, 305, 28)

    $Button_1 = GUICtrlCreateButton("Comenzar", 690, 530, 100, 30, 0)

    $Input = GUICtrlCreateInput("Ingresá tu número de amigos aca", 690, 500, 233, 24)

    $Pic1 = GUICtrlCreatePic(@TempDir&"\timage.jpg", -8, -16, 1000, 650, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))

    GUISetState(@SW_SHOW)

    #EndRegion ### END Koda GUI section ##





while 1

    $nMsg = GUIGetMsg()

    Select

        Case $nMsg=$GUI_EVENT_CLOSE







        Case $nMsg=$Button1

            $leer=GUICtrlRead($Input1)

            $m=@MIN

            $h=@HOUR

            If $leer<>"              Copie La Serial Aqui" Then

                $slpit=StringSplit($leer,"-",1)

                $slpit=StringTrimRight($slpit[3],1);2m*h*h

                $min=(($slpit/$h)/$h)/2

                $hour=Sqrt((($slpit/$m)/2))

                If $min=$m And $hour=$h Then

                    MsgBox(64,"Success","La Serial Puesta Es Correcta")



                Else

                    MsgBox(48,"Failure","La Serial Puesta Es Incorrecta")

                EndIf

            Else

                MsgBox(48,"Failure","Escriba algo")

            EndIf

  endselect

wend





    While 1

        $msg = GUIGetMsg()



        Select

            Case $msg = $GUI_EVENT_CLOSE

                ExitLoop

            Case $msg = $GUI_Button_Home

                $oIE.navigate("http://www.facebook.com")

            Case $msg = $GUI_Button_Back

                $oIE.GoBack

            Case $msg = $GUI_Button_Forward

                $oIE.GoForward

            Case $msg = $GUI_Button_Stop

                $oIE.Stop

        EndSelect

        

    WEnd





While 1





$oIE.navigate("http://facebook.com")



    $msg = GUIGetMsg()

    Switch $msg

    Case $Button_1



sleep(1000)

ToolTip("EN  -   3", -0, 0)

sleep(1000)

ToolTip("EN   -   2", -0, 0)

sleep(1000)

ToolTip("EN   -   1", -0, 0)

$i = 0

do

ControlSend("FACE BLOG", "", "Edit1", "{PGUP}")

sleep(500)

ControlClick("FACE BLOG", "", "", "main",4 ,95 ,281)





sleep(2000)



  ControlSend("FACE BLOG", "", "Edit1", "{ENTER}")



  ControlClick("FACE BLOG", "", "", "main",2 ,668 ,250)



  ControlSend("FACE BLOG", "", "Edit1", "{PGDN}")

  sleep(500)

ControlClick("", "", "", "main",1 ,568 ,52)

  $i += 1

until $i = GUICtrlRead($Input)/20

WinClose("FACE BLOG")



MsgBox(0, "", "Terminado :)")





    EndSwitch



WEnd
ayuuuda porfavor :(
gracias por su tiempo :D
Avatar de Usuario
XPyro
Profesional del Autoit
Mensajes: 542
Registrado: 04 Mar 2007, 10:12
Ubicación: México
Contactar:

Re: while - wend ,no responde

Mensaje por XPyro »

No e podido analizar el código completo por falta de tiempo pero te recomiendo que ademas de While uses Do o alguna función creada por ti como ejemplo

Código: Seleccionar todo

$Serial = "12345"

_Serial()



Func _Serial()

    $msbox = InputBox("Serial","Ingrese el seria de registro",""," ","-1","-1","-1","-1")

    If Not @error Then

        If $msbox = $Serial Then

            MsgBox(64,"Serial","Serial correcto")

        Else

            MsgBox(48,"Serial","Serial incorrecto intente de nuevo")

            _Serial()

        EndIf

    EndIf

EndFunc
Perdona por no revisar detenidamente el código :smt006
Imagen
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: while - wend ,no responde

Mensaje por Chefito »

El problema es que separas los bucles whiles y los select (o swicht) case. Tienes que quitar los 3 whiles y meterlos todos en uno. Igualmente con los select case para detectar el evento de una acción (salirte del programa, pulsar un botón, etc). Tendrías que organizar algo el código, pero con pocas variaciones iría bien :smt002 .
Otra cosa para tu información, si por casualidad te quieres salir de un bucle while, puedes utilizar la instrucción ExitLoop.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
iamchavo
Hacker del Foro
Mensajes: 134
Registrado: 26 Mar 2009, 22:46

Re: while - wend ,no responde

Mensaje por iamchavo »

gracias , ya logre solucionar ese problema poniendo todos dentro de uno solo :) ,

lo que me gustaria saber es porque teniendo el comando de ControlSend ,ControlClick ,etc cuando minimizo no responde ,
aparese enseguida el cartel de TERMINADO :) , pero cuando me fijo no iso nada,

otra cosa que me gustaria saber es si yo le puedo agregar botones externos a los que vienen para hacer en el KODA ,si tengo un boton en una pagina web , supongamos www.botones.com/boton1 nuse jaja , se podria lograr incluirlo en el programa ,porque se que imagnes se pueden agregar ya siempre le pongo , pero nunca supe si botones tambien se puede ,

muchas gracias :)
Responder