Bulles d'aide pour Mac OS X

 

Les bulles d'aide dont de petites fenêtres qui affichent un texte quand la souris reste un certain temps sur un widget (généralement un bouton). Le script ci-dessous vous montre comment réaliser et utiliser des bulles d'aide avec Tk sous Mac OS X :

 proc bulleaide {w help} {
     bind $w <Any-Enter> "after 1000 [list bulleaide_montre %W [list $help]]"
     bind $w <Any-Leave> "destroy %W.bulle"
 }

 proc bulleaide_montre {w arg} {
     if {[eval winfo containing  [winfo pointerxy .]]!=$w} {return}
     set top $w.bulle
     catch {destroy $top}
     toplevel $top -bd 0 -bg #CCCCCC
     wm overrideredirect $top 1
     ::tk::unsupported::MacWindowStyle style $top help none
     pack [message $top.txt -aspect 10000 -bg #FDFFCC \
             -font {"Lucida Grande" 10} -text $arg -relief flat -border 0]
     set wmx [winfo rootx $w]
     set wmy [expr [winfo rooty $w]+[winfo height $w]]
     wm geometry $top [winfo reqwidth $top.txt]x[winfo reqheight $top.txt]+$wmx+$wmy
     raise $top
 }

La syntaxe pour ajouter une bulle d'aide à un widget est : bulleaide widget message, exemple :

 set byebye [button .q -text "Ciao" -command "exit"]
 bulleaide $byebye "Pour quitter l'application"

Catégorie Mac OS X - Catégorie Exemple