我已經爲朋友的業務編寫了Python程序,並且正在使用Tkinter作爲接口。到目前爲止,所有功能都已添加到主程序窗口中,但我現在添加了一個打印功能,創建了一個簡單的「文件」菜單,並且希望爲該菜單添加一個「打印」條目,包括顯示相關鍵盤快捷鍵。如何獲得Tkinter菜單中的Mac「命令」符號
在我的Mac上,我希望快捷方式爲Command-P。我發現了Mac的「command」符號的Unicode值,並嘗試過用各種方法創建一個簡單地連接符號和字母「P」的加速器字符串,但沒有任何效果。我在「打印」旁邊的菜單中找到要顯示的符號或字母,但從未同時顯示。
這裏是代碼的全部行,在建立字符串添加菜單項,用最新的嘗試(我相信我發現這個unicode.join
選項在堆棧溢出其他地方):
sub_menu.add_command(label="Print", command=self.print_, accelerator=unicode.join(u"\u2318", u"P"))
// Only the "P" displays
下面是一些我試過的其他選項(爲了清晰起見,線條被截斷)。隨着每個選項,則僅顯示「命令」符號:
accelerator=u"\u2318\u0050"
accelerator=u"\u2318" + "P"
accelerator=u"\u2318" + u"P"
accelerator=u"\u2318P"
accelerator=u"".join([u"\u2318", u"P"])
到現在爲止,我還沒有一個需要學習很多關於Unicode字符串,所以也許有什麼東西我做錯了在這方面。然而,我所做的所有嘗試都是在這裏和其他地方進行各種搜索的結果,迄今爲止還沒有任何成效。任何有關如何進行這項工作的見解都將非常受歡迎!
的Python 2.7.3,Mac OS X的10.8.3
''從我的簡短的谷歌搜索..但這可能無法正常工作... –
這是[answer](http:// stackoverflow。com/questions/16379877/how-to-get-tkinter-mac-friendly-menu-shortcuts-cmdkey/16471555#16471555)我的幫助? – martineau
@Joran和@martineau:你的兩條評論都是指對擊鍵事件本身的處理,但那不是我的問題。我想弄清楚如何使用菜單的'add_command'方法的'accelerator'參數來顯示「⌘P」作爲菜單項的鍵盤快捷鍵。我上面列出的解決方案要麼給我「⌘」或「P」,但不能將兩個字符放在一起。 –