python tkinter如何将键绑定到按钮

编程新手,特别是python和tKinter.如何创建一种方法将键“s”绑定到按钮或功能锐化?任何帮助都是极好的.

from Tkinter import *
from PIL import Image,ImageTk,ImageFilter,ImageEnhance

class Application(Frame):
    def __init__(self,master=None):
        Frame.__init__(self,master)
        master.wm_title("Image examples")
        self.pack()
        self.createWidgets()

def createWidgets(self):
    self.img = Image.open("lineage.jpg")
    self.photo1 = ImageTk.PhotoImage(self.img.convert("RGB"))
    self.label1 = Label(self,image=self.photo1)
    self.label1.grid(row=0,column=0,padx=5,pady=5,rowspan=10)

    self.photo2 = ImageTk.PhotoImage(self.img.convert("RGB"))
    self.label2 = Label(self,image=self.photo2)
    self.label2.grid(row=0,column=1,rowspan=10)

    button5 = Button(self,text="Sharpen",command=self.sharpen)
    button5.grid(row=4,column= 2,sticky = N)

def sharpen(self):
    img2 = self.img.filter(ImageFilter.SHARPEN)
    self.photo2 = ImageTk.PhotoImage(img2)
    self.label2 = Label(self,rowspan=10)
最佳答案
您需要进行两项更改:

>添加

master.bind('s',self.sharpen)

__init__. (绑定到框架,自我,似乎不起作用.)
>按下s时,将调用self.sharpen(event).以来
Tkinter将发送一个Tkinter.Event对象,我们还必须更改调用
签名到

def sharpen(self,event=None):

因此,按下按钮时,事件将被设置为认值
value,None,但按下s键时,event
将被分配给Tkinter.Event对象.

相关文章

我最近重新拾起了计算机视觉,借助Python的opencv还有face_r...
说到Pooling,相信学习过CNN的朋友们都不会感到陌生。Poolin...
记得大一学Python的时候,有一个题目是判断一个数是否是复数...
文章目录 3 直方图Histogramplot1. 基本直方图的绘制 Basic ...
文章目录 5 小提琴图Violinplot1. 基础小提琴图绘制 Basic v...
文章目录 4 核密度图Densityplot1. 基础核密度图绘制 Basic ...