2013-05-04 46 views
5

我正在考慮Tkinter菜單標籤(命令)的快捷鍵。 在Mac上,與cmd⌘的組合很常見。如何獲得Tkinter Mac友好的菜單快捷鍵(cmd + key)

到目前爲止,我只找到了self.bind_all("<Control-q>", self.quit)。如何實現cmd⌘快捷鍵?

然後,考慮一下 - 一旦應用程序完成 - 將其翻譯爲Windows和Mac應用程序的可執行文件可能會導致使用cmd⌘時出現困難? 處理這個問題的最佳方法是什麼?

回答

4

我想你需要指定Tk Built-in Commands列出的元和M修飾符之一 - 也許Mod1代替Control。你也可能會發現這個keysyms recognized by Tk列表有用。

雖然我從來沒有真正嘗試過每一個做到這一點 - 如果一切都失敗了 - 你可能能夠確定你需要編寫自己的事件處理函數def handlerName(event):,將其綁定到'<Any-KeyPress>'事件知道什麼,然後在函數print中調用事件參數的屬性值(例如event.keycode,event.keysym,event.keysym_num等),從而允許您查看要在其上檢測⌘-key修改的擊鍵的操作你的Mac。

最後,Python是開源的,所以你可以隨時嘗試閱讀。

更新:從此answer中的代碼,它聽起來像Command-將工作。