为此代码添加键盘快捷键?

时间:2016-12-02 08:16:57

标签: python tkinter

我想使用 Ctrl + Q 作为该子菜单按钮的键盘快捷键EXIT ... 我是一个非常初学者,我会感激添加代码和解释。

    #RPi_CPC GUI
from Tkinter import *
from subprocess import call
import subprocess as sub
import os
import sys

#create the window
root = Tk()
root.configure(background="black")
#root.attributes('-fullscreen', True)

#MENU FUNCTIONS
def shutdown():
 call (["poweroff"]);
def reboot():
 call (["reboot"]);
def exit():
 quit();

#MENU###################
menu = Menu(root, bg="black", fg='chartreuse')
root.config(menu=menu)
subMenu = Menu(menu, bg="black", fg='red')
menu.add_cascade(label="Options", menu=subMenu)
subMenu.add_separator()
subMenu.add_command(label="POWER OFF", font="Courier 15 bold ", command=shutdown)
subMenu.add_separator()
subMenu.add_separator()
subMenu.add_command(label="RESTART RPI!", font="Courier 15 bold", command=reboot)
subMenu.add_separator()
subMenu.add_separator()
subMenu.add_command(label="EXIT", font="Courier 15 bold ", command=exit)
subMenu.add_separator()

########################

1 个答案:

答案 0 :(得分:2)

你必须使用

root.bind('<Control-q>', exit)

bind使用参数event执行函数,因此您必须更改函数

def exit(event=None):
    quit()

现在可以使用bind()command=

您可以使用accelerator=

向菜单添加信息
subMenu.add_command(label="EXIT", command=exit, accelerator="Ctrl+Q")