有没有某种方法可以让鼠标在 python 的控制台窗口上按下?我知道你可以这样做,因为如果你运行的是 Windows,你可以打开 cmd 并键入“edit”。例如,你会如何在 python 中执行此操作?谢谢。
最佳答案
我个人不喜欢上一个答案中的 PyWin32,因为它仅在第一次导入时有效,之后无法导入它的主要 pyd 模块。
还有一个事实是它不是跨平台的。
curses 是一个更好的选择,虽然它对 python27 并不完全友好,但我已经设法让它在 Wine 中工作:
import _curses # _curses.pyd supplied locally for python27 win32
import curses
screen = curses.initscr()
#curses.noecho()
curses.curs_set(0)
screen.keypad(1)
curses.mousemask(curses.ALL_MOUSE_EVENTS)
screen.addstr("This is a Sample Curses Script\n\n")
key=0
while key!=27: # Esc to close
key = screen.getch()
#screen.erase()
if key == curses.KEY_MOUSE:
_, mx, my, _, _ = curses.getmouse()
y, x = screen.getyx()
screen.addstr('mx, my = %i,%i \r'%(mx,my))
screen.refresh()
curses.endwin()
在此示例中,您需要单击、拖动和释放才能注册事件,但我认为有一种解决方法。
我只是自己玩这个(我不想让 PyQt 或 PyGLFW 变得复杂)
编辑:
设法让它按预期工作并更新了代码。
您无需再拖动即可注册该事件。
关于python - 在 python 的控制台窗口上按下鼠标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8677627/