problema con algunos comandos.

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
xapu
Hacker del Foro
Mensajes: 82
Registrado: 12 Dic 2009, 15:42

problema con algunos comandos.

Mensaje por xapu »

mi nuevo problema.. es que los programas no hacen caso a este bucle:

Código: Seleccionar todo

While 1
       $nMsg = GUIGetMsg()
       Switch $nMsg
          Case $GUI_EVENT_CLOSE
             Exit
       EndSwitch
    WEnd
entonces no puedo hacer unas cosas que necesito
- 0 error(s), 0 warning(s) :smt098 FUCK YEA!
http://xapus.blogspot.com/
Avatar de Usuario
XPyro
Profesional del Autoit
Mensajes: 542
Registrado: 04 Mar 2007, 10:12
Ubicación: México
Contactar:

Re: problema con algunos comandos.

Mensaje por XPyro »

Esto si que no creo que sea problema de AutoIt pero tienes otra opción y es usar GUIOnEventMode

Código: Seleccionar todo

#include <GUIConstantsEx.au3>

Opt("GUIOnEventMode", 1)  ; Change to OnEvent mode 
$mainwindow = GUICreate("Hello World", 200, 100)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
GUICtrlCreateLabel("Hello world! How are you?", 30, 10)
$okbutton = GUICtrlCreateButton("OK", 70, 50, 60)
GUICtrlSetOnEvent($okbutton, "OKButton")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)  ; Idle around
WEnd

Func OKButton()
  ;Note: at this point @GUI_CTRLID would equal $okbutton,
  ;and @GUI_WINHANDLE would equal $mainwindow
  MsgBox(0, "GUI Event", "You pressed OK!")
EndFunc

Func CLOSEClicked()
  ;Note: at this point @GUI_CTRLID would equal $GUI_EVENT_CLOSE, 
  ;and @GUI_WINHANDLE would equal $mainwindow 
  MsgBox(0, "GUI Event", "You clicked CLOSE! Exiting...")
  Exit
EndFunc
Imagen
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: problema con algunos comandos.

Mensaje por Ximorro »

EL bucle inicial está bien escrito, probablemente el problema es que el programa no está ejecutándolo, estará en otro bucle o parado por otro sitio...

O si lo has simplificado y en realidad contiene otras cosas, igual son muy "pesadas" y casi no le da tiempo a comprobar los eventos, en ese caso quizás el método que te pone XPyro lo solucione.

Si acaso pon más código a ver qué puede estar pasando... ¿no tendrás dos GUIs? Si tienes dos igual se están liando los eventos, tienes que mirar de qué ventana vienen...
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Responder