2011-06-21 3 views
6

Soy un Windows XP que utilizan devoto teclado, y quiero unir inicio - T a poner el foco del teclado en el icono de la bandeja. (Debido a que va a ser mucho mejor que inicio - B y luego muchos Shift -. Tab s)Poniendo el foco en los iconos de la bandeja en Windows XP utilizando Python

Así que me gustaría hacer un programa Python que pone el foco en el teclado los iconos de la bandeja. ¿Cómo podría hacer esto desde Python? Sé muy poco sobre el control del comportamiento de Windows.

Si hay algún programa listo que lo haga, estaré encantado de escucharlo también.

Respuesta

1

Estoy 99% seguro de que no hay forma admitida de acceder al área de notificaciones de la bandeja. El elemento realmente enfocable es el botón de desbordamiento, no el ícono de la bandeja en sí, y el equipo de Shell de Windows no quiere garantizar que este botón sea siempre enfocable o que este botón exista en futuras versiones de Windows. Entonces no hay API para acceder. Esta es una forma muy hacky para hacerlo, puede dejar de funcionar en cualquier momento - únicamente para uso personal (probado en Windows 7):

import win32gui 
import win32con 
taskbar = win32gui.FindWindow("Shell_TrayWnd", None) 
trayArea = win32gui.FindWindowEx(taskbar, None, "TrayNotifyWnd", None) 
win32gui.SetForegroundWindow(taskbar) 
win32gui.SendMessage(trayArea, win32con.WM_SETFOCUS, 0, 0) 

Una vez más, no lo use en una aplicación que otra la gente usará. El módulo win32gui es parte del Win32 Extensions.

Para la tecla de acceso rápido podría usar RegisterHotKey, pero debería ser más sencillo dejar que Explorer lo maneje: agregue un enlace a su secuencia de comandos al menú Inicio y defina una tecla de acceso directo para ello.

+0

¿Qué es el "botón de desbordamiento"? –

+0

Parece que la secuencia de comandos funciona, pero el explorador (al menos en XP) no se puede enlazar a - . No uso C#, así que RegisterHotKey no ayuda. ¿Hay alguna utilidad para enlazar la tecla de método abreviado? –

+0

De acuerdo, utilicé AutoHotKey para el enlace y funciona! –

Cuestiones relacionadas