我的应用程序使用win32api.mouse_event
. 这会导致我的窗口失去焦点,所以我无法检测到按键使用msvcrt.kbhit.
我的问题是,如何在控制台窗口不可见/不活动的情况下实现这样的事情?
编辑:
这是示例代码。这只是一个基本的控制台版本。如果控制台消失,请将其设置为保持在顶部。一旦它在控制台外(100,100)单击,按 Esc 键将不会跳出循环。对于这样的问题,如何实现中断?
import msvcrt, win32api, win32con
pixelx = 100
pixely = 100
win32api.SetCursorPos((pixelx,pixely))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,pixelx,pixely,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,pixelx,pixely,0,0)
while 1:
print 'Testing..'
# body of the loop ...
if msvcrt.kbhit():
if ord(msvcrt.getch()) == 27:
break