Muy basico: Como abrir el menu Archivo del notepad...

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
jriverac
Mensajes: 11
Registrado: 15 Dic 2010, 23:29

Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por jriverac »

Hola,

Soy un novato muy novato en Autoit. Estoy intentando reproducir los ejemplo mas simples para aprender pero no me funciona casi nada!!!

Quiero abrir el notepad y seleccionar el menu Archivo y luego abrir. Mi codigo es:

run("notepad.exe")
winwaitactive("Sin título - Bloc de notas")
send("Prueba")
WinMenuSelectItem("Sin título - Bloc de notas", "", "&Archivo","&Abrir" )

pero despues de escribir "Prueba" no hace nada....

Alguna ayuda?

Muchas gracias y disculpad lo simple de la pregunta.

Juan
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por Ximorro »

Mira no conocía esa función.
Pero A MÍ SÍ ME FUNCIONA. Así que no sé qué te estará pasando.
Lo que pasa que antes de abrir el diálogo de abrir, como se ha escrito lo de "Prueba", primero te pregunta si lo quieres guardar.

Así que el programa parece estar bien, a ver si te sale el diálogo detrás de otra ventana y no lo ves...

No tengas abiertos varios Notepad, a ver si se está liando... aunque de alguno de ellos debería ejecutar ese menú.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
jriverac
Mensajes: 11
Registrado: 15 Dic 2010, 23:29

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por jriverac »

No lo entiendo, a mi no me funciona, no selecciona los menús... Que otro método hay para selecciónar un punto de menú?
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por Ximorro »

Puedes enviar las teclas del comando. Por ejemplo para Abrir es Control-A, así que con un
Send("^a")
solucionado.

O si no tiene atajo de teclado pues como lo harías a mano para ir al menú:
Alt+A (abre menú archivo)
Dos veces cursor abajo (para ponerse sobre la opción)
Enter (para ejecutarla)
O sea:
Send("!a")
Send("{DOWN 2}")
Send("{ENTER}")


Se pueden poner todas en un Send, pero por separar las acciones igual que te las he puesto arriba.

Eso sí, para que funcionen estos comandos debe estar activa la ventana correspondiente, piensa que es como si lo hicieras tú con el teclado.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
jriverac
Mensajes: 11
Registrado: 15 Dic 2010, 23:29

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por jriverac »

Muchas gracias, lo probare, pero aun no entiendo pq no funciona lo anterior.

Un saludo,

Juan
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por Chefito »

Que sistema operativo utilizas? Ten cuidado con eso y mira bien el título de la ventana. En Windows 7 es con dos puntos en vez de con guión ("Sin título: Bloc de notas").
Para evitar esto puedes poner la clase en vez de el título:

Código: Seleccionar todo

run("notepad.exe")
winwaitactive("[CLASS:Notepad]")
ControlSetText("[CLASS:Notepad]","","Edit1","Prueba")
WinMenuSelectItem("[CLASS:Notepad]", "", "&Archivo","&Abrir" )
Esto debe funcionar en cualquier S.O..
Aunque si lo pensamos, si te escribe la palabra Prueba, este no sería el problema :smt017 .

Otra forma algo más complicada es utilizando la udf que trae AutoIt para manejar menus (GuiMenu, son las funciones que empiezan por _GUICtrlMenu_.........) y el envio de mensajes. Con _sendmessage le envio un click al item 2 (abrir).

Código: Seleccionar todo

#Include <SendMessage.au3>
#include <WindowsConstants.au3>

run("notepad.exe")
winwaitactive("[CLASS:Notepad]")
$hWnd = WinGetHandle("[CLASS:Notepad]")
ControlSetText("[CLASS:Notepad]","","Edit1","Prueba")
_SendMessage($hWnd,$WM_COMMAND,2)
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 ;).
jriverac
Mensajes: 11
Registrado: 15 Dic 2010, 23:29

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por jriverac »

Hola de nuevo,

Estoy bastante frustrado; mi codigo no funciona pero a Ximorro si.

El tuyo, Ximorro, no me funciona, pero el que ha puesto Chefito, el segundo bloque, mas complejo, si que funciona...

Tengo la version ultima de Sc1, Version 1.79 del Apr 16 2010 08:48:29 y un Windows XP...

Ahora, intento modificar el codigo de Chefito para abrir otro programa que tiene 3 ventanas, segun el Autoit v3 window info, la que quiero activar se llama asi:
Title: Control Center - Default
Class: WindowsForms10.Window.8.app.0.378734a
Advance Mode: [CLASS:WindowsForms10.Window.8.app.0.378734a; INSTANCE:8]

Como la Class de las 3 ventanas se llaman igual, intento usar esta linea para activar la ventana:
WinActivate("[TITLE:Control Center - Default]", "")

pero ni caso y entonces pruebo con esta otro forma:
WinActivate("[CLASS:WindowsForms10.Window.8.app.0.378734a; INSTANCE:8]", "")

y ni caso...

¿Como puedo activar esta ventana?

Muchas gracias!!

Juan
jriverac
Mensajes: 11
Registrado: 15 Dic 2010, 23:29

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por jriverac »

Hola de nuevo

Ya lo he conseguido, muchas gracias por vuestra ayuda, seguramente volvere a preguntar a medida que avance en AutoIt.

Saludos

Juan
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por Chefito »

De nada.
Me parece rarísimo que no te funcione el código. Todos van (de una forma u otra). Seguro que si lo pruebas en otro ordenador te va. Puede que en el tuyo no vaya por alguna cosa que hayas instalado o que se yo :smt017 .

Por cierto, he editado el código anterior del segundo bloque. Lo he simplificado mandandole solamente el click del item a la ventana principal (notepad) directamente. Así queda más facil y más compacto :smt002 .

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 ;).
jriverac
Mensajes: 11
Registrado: 15 Dic 2010, 23:29

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por jriverac »

Hola de nuevo,

He conseguido avanzar en casi todo, pero ahora me he atascado en esto:

En una pantalla determinada, hay varios radio buttons. Con el TAB, consigo llegar al que quiero activar, pero como el mouse anda donde quiere, no se como decir al mouse que se mueva al boton que ya esta resaltado, para hacer click.

Tampoco se hacerlo con el teclado, es decir, cuando ya tengo el radio button resaltado, con ENTER no consigo nada, deberia llevar el raton a ese boton...

Gracias

SAludos
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Muy basico: Como abrir el menu Archivo del notepad...

Mensaje por Chefito »

Te recomiendo que utilices más el buscador del foro, porque casi todas esas preguntas están ya contestadas. Busca por ejemplo el comando controlclick, o checkbox.
Ejemplo: http://www.emesn.com/autoitforum/viewto ... lick#p8813

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 ;).
Responder