编程新手,特别是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对象.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。