2014-05-03 70 views
0

對於Tkinter中的鍵綁定,"<Control-Shift-u>"的Linux版本是什麼?你可能會覺得這正是這樣,但是,唉,似乎並不是這樣。例如,"<Control-Shift-Tab>"的Linux版本是"<Control-ISO_Left_Tab>"。我搜索了並沒有找到任何文件。Tkinter Linux版本的「<Control-Shift-u>」

回答

1

下面將做你想要什麼:

from Tkinter import * 

def proof(event=None): 
    print 'ping' 

root = Tk() 

frame = Frame(root, height=100, width=100) 
frame.focus_set() 
frame.bind('<Control-Shift-KeyPress-U>', proof) 
frame.pack() 

root.mainloop() 

u變得因爲Shift修飾符的資本和你想要捕捉的KeyPress事件。

+0

這適用於除u以外的其他字母(但我沒有意識到,當我問這個問題時),但在Tkinter中,其他一些默認功能由於某種原因接管了鍵綁定,允許幾乎相同的Unicode輸入方法I想要的,除了它是越野車,並可以禁用你的鍵盤,如果你輸入了錯誤的東西。 – Shule

+0

僅供參考,我綁定了ScrolledText小部件。 – Shule

+1

好的,我找到了一個解決方法。訣竅是使用菜單加速器,就像這樣(與大寫字母U相似):'self.menu_tools.add_command(label =「插入Unicode字符」,command = self.enter_code,accelerator =「Ctrl + U「);' – Shule