Gérer correctement les raccourcis clavier

 

Tk permet de gérer les raccourcis clavier de deux manières :

Ces raccourcis utilisent presque toujours des combinaisons de touches dépendantes du système d'exploitation (Ctrl sous Windows/linux, ⌘ (Command) sous Mac OS X, etc..). De ce fait vous devez être très prudent si vous souhaitez écrire une application qui devra fonctionner sur diverses plate-formes.

Le script ci-dessous vous montre comment faire pour contourner ce problème :

 if {[tk windowingsystem] eq "aqua"} {
     # Pour Mac OS X :
     set control "Command"
     set ctrl    "Command-"
 } elseif {[tk windowingsystem] eq "win32"} {
     # Pour Windows :
     set control "Control"
     set ctrl    "Ctrl+"
 } else {
     # Pour les autres :
     set control "Control"
     set ctrl    "Ctrl-"
 }
 $menu add command -label "Faire un truc" -accelerator "${ctrl}d"
 bind $bidule <${control}d> { # Faire un truc ... }

Catégorie Exemple