【问题标题】:Send Key Event to a Child Window将按键事件发送到子窗口
【发布时间】:2011-11-27 15:09:28
【问题描述】:

我正在用 python 开发一个应用程序,它将键盘事件发送到另一个外部应用程序。我使用 pywin32 包来设置外部应用程序并发送所需的密钥:

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

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

我正在使用的外部应用程序有一个虚拟键盘和一个接收键盘事件的文本区域。我想将按键事件(在本例中为“ENTER”)发送到键盘区域(因为键盘正在扫描字母并使用 Enter 选择所需的字母)。但是,我的应用程序将按键事件发送到文本区域而不是键盘。

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

【问题讨论】:

    标签: python keyboard pywin32 childwindow


    【解决方案1】:

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

       import win32api
       win32api.PostMessage(handler, win32con.WM_KEYDOWN, win32con.VK_RETURN, 0)
    

    【讨论】:

      猜你喜欢
      • 2014-03-19
      • 2012-10-31
      • 1970-01-01
      • 1970-01-01
      • 2014-10-04
      • 1970-01-01
      • 2019-05-15
      • 2022-10-19
      • 1970-01-01
      相关资源
      最近更新 更多