2016-07-09 7 views
1

Ich habe Probleme mit der Erstellung von Tastenkombinationen für mein Programm. Ich konnte nicht scheinen root.bind("<Control-Shift-s>",function) zu arbeiten, aber root.bind("<Control-s>",function) funktioniert perfekt. Hier ist der Beispielcode:Tkinter: Problem mit dem Erstellen von Tastenkombinationen

from tkinter import * 

root = Tk() 
def function(): 
    print("This is a function") 

root.bind("<Control-Shift-s>",function) # Doesn't work 
root.bind("<Control-s>",function) # Works perfectly 

root.mainloop() 

Antwort

0

Wechsel:

root.bind("<Control-Shift-s>",function) # Doesn't work 

zu einer der folgenden:

  1. root.bind("<Steuerung-Shift_L><S>",function)
  2. root.bind("<Steuerung-Shift_R><S>",function)
  3. root.bind("<Steuerung-Umschalt-S>",function)

(Reference)

+1

Danke. Es funktionierte perfekt für mich –

+1

Einige der kniffligen Details der Tastenbindung sind OS-spezifisch. Hung, welche benutzt du? –

+2

Eigentlich ist das auch in Ordnung '' das S muss Kapital sein, weil Sie die Schicht halten, so dass Sie ein großes S erwarten. Auch 'Funktion' braucht einen Parameter, sonst erhalten Sie einen Fehler. –