如何用键盘激活tkinter按钮?

时间:2017-08-05 04:02:54

标签: python tkinter

我正在制作一个音乐应用程序,一个用GUI(图形用户界面)播放鼓的应用程序。所以我已经为每一个鼓标记了按钮,并且我已经在我的画布上绘制了鼓组,但我不知道如何用我的电脑键盘激活按钮,是否可能?

感谢您的支持 祝你有个快乐的一天

以下是代码:

##import libraries
from Tkinter import *
from winsound import *
import os
import ttk

##Initialize
root = Tk()
root.geometry('{}x{}'.format(938, 600))
canvas = Canvas(root, width = 938, height = 505, bg = 'white')
canvas.pack()
label = ttk.Label(root, text ="Hello my name is Scorp welcome to this drums 
app")
label.pack()
label.config(foreground ='black')
label.config(font = ('arial',15, 'bold'))
##PhotoImage(file ="g1.gif")
logo =PhotoImage(file ="drums1.gif")
imageFinal = canvas.create_image(480, 260, image = logo)


##logo =PhotoImage(file ="drums.gif")
##imageFinal = canvas.create_image(530, 80, image = logo)


def move():
    canvas.move(imageFinal, 10, 10 )
    canvas.move(label, 10, 10) 
    canvas.update()

def play1():
    os.system('hi_hat.wav')

##define buttons
button = Button(text = 'move', height = 2, width = 4, command = move)
button.place(x=556, y=550)
button1 = Button(text = 'Hi-Hat', height = 2, width = 10, command = play1)
button1.place(x=20, y=240)
root.mainloop()

ALAN ABUNDIS在PYTHON写的作品

1 个答案:

答案 0 :(得分:1)

您可以使用GUI按钮功能绑定键盘按键,这样无论何时按下所选键盘按键,该功能都可以访问。

首先,您必须创建按钮:

btn = Button(text = 'move', height = 2, width = 4, command = move) button.place(x=556, y=550)

现在用键绑定它(例如shift + z):

btn.bind("<Shift-Z>", move)

现在定义功能:

def move(event=' '): canvas.move(imageFinal, 10, 10 ) canvas.move(label, 10, 10) canvas.update()

你必须给你的函数提供一个'event'参数,你要用一个键绑定它。我已将event的默认值设置为空字符串,因此每当您使用鼠标按下屏幕上的按钮时,它都不会给您一个错误。