我编写了一个 python 程序,它使用 gphoto2 来控制我的相机——所以我可以创建一个照相亭。我没有为用户提供键盘或鼠标输入,而是购买了一个 xin-mo 控制器,这样我就可以提供一个简单的街机风格按钮界面(拍照、拒绝照片、接受照片等)。
python 程序是使用 Tkinter 编写的,我使用 evdev 从 xin-mo 读取输入事件。我用于 xin-mo 事件的代码是这样的:-
while True:
for ev in device.read():
print("Take photo")
它可以工作,按下按钮时我可以做一些事情。
我不知道如何让 evdev 和 Tkinter 一起工作。根据我的发现,我需要调用 mainloop 来呈现 GUI ......但是一旦在 mainloop 中,我如何从 xin-mo 控制器读取输入事件?
我对 python 很陌生,所以我很可能遗漏了一些明显的东西。
谢谢,史蒂夫。