2011-09-29 77 views
0

我正在开发一个应用程序在python中发送键盘事件到另一个外部应用程序。我使用pywin32包将外部应用程序,并发送所需的键:发送关键事件到子窗口

import win32com.client as w32 
shell = w32.Dispatch("WScript.Shell") 

shell.AppActivate(desired_application) 
shell.SendKeys("{ENTER}") 

我使用的外部应用程序有一个虚拟键盘,接收键盘事件的文本区域。我想将键盘事件(在这种情况下为'ENTER')发送到键盘区域(因为键盘正在对字母进行扫描并用Enter键选择所需的字母)。但是,我的应用程序将关键事件发送到文本区域而不是键盘。

我试图从win32gui中得到我想要的FindWindow和EnumChildWindow窗口的句柄...那么,有没有办法将密钥发送到外部应用程序的特定子窗口?

回答

0

我设法选择具有EnumChildWindow的特定句柄(枚举应用程序的所有句柄)并使用PostMessage发送消息。

import win32api 
    win32api.PostMessage(handler, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0) 
相关问题