我正在使用多处理来调用一个函数,该函数将您按键盘上的键作为参数。但是当我启动程序时,任务管理器中会出现一个新进程,但我的功能不起作用。我的代码是:
#Initalisation
global event
global hitkey
#Functions
def key(event):
hitkey = event.char
instance = multiprocessing.Process(target=player, args=(hitkey,))
instance.start()
print(hitkey)
def player(hitkey):
print(hitkey + "1")
winsound.PlaySound(hitkey + '.wav', winsound.SND_FILENAME|winsound.SND_NOWAIT|winsound.SND_ASYNC)
if __name__ == "__main__":
#Initialisation
fenetre = Tk()
frame = Frame(fenetre, width=200, height=100)
#TK
frame.focus_set()
frame.bind("<Key>", key)
frame.pack()
fenetre.mainloop()
我使用“print(hitkey)
和print(hitkey + "1")
作为标记来查看我的密钥会发生什么。当我按下某个键时,新进程会生成,该字母会显示在控制台中,但不是”字母+ 1“。所以我觉得我的多处理代码行中出了问题。
任何人都可以帮助我吗?