Python:按键启动功能

2024-03-28 14:10:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在为我弟弟做一个简单的程序,当他按下鼠标上的第四个按钮时,它就会发出他想要的叮当声。 我有PyAudio并使用一个简单的函数来播放铃声。 我只需要知道如何设置一个功能,当一个按钮被按下时启动。
我的第一个想法是有一个When循环,当按钮被按下时,它会改变var以适应循环的结束,但我也不知道如何改变按钮按下时的var。

谢谢你事先的帮助。


Tags: 函数程序功能var鼠标按钮whenpyaudio
1条回答
网友
1楼 · 发布于 2024-03-28 14:10:36

用python简单地制作GUI很容易。如果你喜欢外在的体面,Pygame很受欢迎。Tkinter内置于python中,非常易于使用

Effbot是它不可或缺的资源;这是他们关于按钮的页面。

http://effbot.org/tkinterbook/button.htm

有人(事实上,很多人)也对此感到好奇

How to pass arguments to a Button command in Tkinter?

要点是(python 2)

# import the GUI manager package
import Tkinter as tk
# make a window pop up
my_root_window = tk.Tk()
# add a button to it
button = tk.Button( my_root_window, text='Press Me!', command=foo)
# make the button appear
button.pack()
# keep the gui alive
my_root_window.mainloop()

我只能举个例子。如SO链接中所述,唯一微妙的是传递函数对象,即在分配函数对象时不要调用它。

请注意,在搜索您的问题时,查询“python button command”会弹出我链接的页面和超过一百万个其他页面;问题是,您所谈论的音频内容与从按钮调用函数的一般问题无关

我还应该注意while循环不是正确的方法,因为它会导致几乎所有GUI冻结。在最后调用的函数“mainloop”使窗口保持打开状态,并允许在窗口中发生事件,如按钮按下。只需在按下按钮时调用函数即可设置正确的连锁反应。如果你需要更多的控制,看看更多的小部件!

绑定到鼠标按钮也很容易

my_root_window.bind('<Button-1>',lambda event : foobar)

只要按下鼠标左键,就会调用foobar。这个enter link description here页面详细介绍了哪些事件是可能的,特别是鼠标事件

相关问题 更多 >