2016-06-26 15 views
0

Ich schreibe eine Anwendung in Tkinter und ich erstelle eine STRG + s speichern-Funktion, und ich möchte das im Menü anzeigen, aber ich kann nicht den eigentlichen Text " Strg + S "rechtsbündig im Befehl. Ich habe versucht, Tabs wie im folgenden Beispiel zu verwenden, aber das hat nicht funktioniert, und ich konnte nichts darauf finden. Hier ist, was ich versuchte:Richten Sie Shortcut-Informationen nach rechts in Tkinter Menü

from tkinter import * 

class Gui: 
    def __init__(self): 
     self.root = Tk() 

     self.menu = Menu(self.root) 
     self.root.config(menu=self.menu) 

     self.label = Label(self.root, text="Welcome to dummy program") 
     self.label.pack(padx=40, pady=20) 

     self.file_menu = Menu(self.root, tearoff=False) 
     self.menu.add_cascade(label="File", menu=self.file_menu) 

     # In the next two lines is where I need the text aligned to the right 
     self.file_menu.add_command(label="Save As \t Ctrl+S", command=lambda: self.label.config(text="Saved!")) 
     self.file_menu.add_command(label="Open \t Ctrl+O", command=lambda: self.label.config(text="Opened!")) 

     self.root.mainloop() 

Gui() 

Aber hier ist, was ich es aussehen soll: enter image description here

Und ich bin nicht sicher, wie der Abstand und die Ausrichtung zu steuern. Vielen Dank.

Antwort

3

Menüpunkte haben eine accelerator speziell für diesen Zweck Attribut:

Beschleuniger Gibt eine Zeichenfolge an der rechten Seite des Menüs Eintrag anzuzeigen. Beschreibt normalerweise eine Tastenkombination, die eingegeben werden kann, um die gleiche Funktion wie der Menüeintrag aufzurufen. Diese Option ist nicht für Trenn- oder Abreißeinträge verfügbar.

self.file_menu.add_command(..., accelerator="Ctrl+S")