  NOM
    button - permet de créer et de manipuler un bouton
  SYNTAXE
    button nom_du_bouton ?options?
  OPTIONS STANDARD
    -activebackground, activeBackground, Foreground
    -activeforeground, activeForeground, Background
    -anchor, anchor, Anchor
    -background or -bg, background, Background
    -bitmap, bitmap, Bitmap
    -borderwidth or -bd, borderWidth, BorderWidth
    -cursor, cursor, Cursor
    -disabledforeground, disabledForeground, DisabledForeground
    -font, font, Font
    -foreground or -fg, foreground, Foreground
    -highlightbackground, highlightBackground, HighlightBackground
    -highlightcolor, highlightColor, HighlightColor
    -highlightthickness, highlightThickness, HighlightThickness
    -image, image, Image
    -justify, justify, Justify
    -padx, padX, Pad
    -pady, padY, Pad
    -relief, relief, Relief
    -repeatdelay, repeatDelay, RepeatDelay
    -repeatinterval, repeatInterval, RepeatInterval
    -takefocus, takeFocus, TakeFocus
    -text, text, Text
    -textvariable, textVariable, Variable
    -underline, underline, Underline
    -wraplength, wrapLength, WrapLength
  OPTIONS SPECFIQUES AU WIDGET
    -command, command, Command
    -compound, compound, Compound
    -défaut, défaut, Default
    -height, height, Height
    -overrelief, overRelief, OverRelief
    -state, state, State
    -width, width, Width
  DESCRIPTION
  COMMANDES ASSOCIEES AU WIDGET
    nom_du_bouton cget option
    nom_du_bouton configure ?option? ?valeur option valeur ...?
    nom_du_bouton flash
    nom_du_bouton invoke
  BINDINGS PAR DEFAUT
  MOTS CLES

### NOM

button - Permet de créer et de manipuler un bouton

### SYNOPSIS

button nom_du_bouton ?options?

### OPTIONS STANDARDS

-activebackground, activeBackground, Foreground
-activeforeground, activeForeground, Background
-anchor, anchor, Anchor
-background or -bg, background, Background
-bitmap, bitmap, Bitmap
-borderwidth or -bd, borderWidth, BorderWidth
-cursor, cursor, Cursor
-disabledforeground, disabledForeground, DisabledForeground
-font, font, Font
-foreground or -fg, foreground, Foreground
-highlightbackground, highlightBackground, HighlightBackground
-highlightcolor, highlightColor, HighlightColor
-highlightthickness, highlightThickness, HighlightThickness
-image, image, Image
-justify, justify, Justify
-padx, padX, Pad
-pady, padY, Pad
-relief, relief, Relief
-repeatdelay, repeatDelay, RepeatDelay
-repeatinterval, repeatInterval, RepeatInterval
-takefocus, takeFocus, TakeFocus
-text, text, Text
-textvariable, textVariable, Variable
-underline, underline, Underline
-wraplength, wrapLength, WrapLength

### OPTIONS SPECIFIQUES AU WIDGET

Ligne de commande Nom : -command
Base de données Nom : command
Base de données Classe : Command
  Spécifie une commande Tcl à associer au bouton. Cette commande est généralement invoquée si le bouton 1 de la souris est pressé tandis que le curseur de la souris est sur le widget bouton.

Ligne de commande Nom : -compound
Base de données Nom : compound
Base de données Classe : Compound
  Spécifie - d'une part - que le bouton doit afficher une image et du texte et - d'autre part - comment le bouton doit être placé par rapport au texte et à l'image. Les valeurs possibles sont bottom (en bas), center (centre), left (gauche), none (aucun), right (droite) et top (en haut). La valeur par défaut est none (aucun), signifiant que le bouton affiche soit une image, soit un texte selon que les options -image et -bitmap sont positionnées ou non.

Ligne de commande Nom : -défaut
Base de données Nom : défaut
Base de données Classe : Default
  Spécifie un des trois états possibles : normal, active (actif), ou disabled (désactivé). Dans l'état actif, l'apparence du bouton est celle définie par la plateforme pour un bouton ayant le focus. Dans l'état normal, l'apparence est celle définie par la plateforme pour un bouton n'ayant pas le focus, laissant assez d'espace pour dessiner le contour indiquant que le bouton a le focus. Les états normal et actif donnent des boutons de même taille. Dans l'état désactivé, le bouton est dessiné avec la même apparence qu'un bouton n'ayant pas le focus mais sans laissé de place pour dessiner le contour indiquant le focus ; il en résulte que dans cette état le bouton apparait plus grand que dans l'état normal.

Ligne de commande Nom : -height
Base de données Nom : height
Base de données Classe : Height
  Spécifie la hauteur du bouton. Si une image ou un bitmap est affiché dans le bouton, alors la valeur est en unité d'écran (i.e. n'importe quelle formulation acceptée par Tk_GetPixels) ; pour le texte, l'unité est la ligne. Si cette option n'est pas spécifiée, la hauteur du bouton est automatiquement calculée à partir de la taille de l'image, du bitmap ou du texte à afficher.

Ligne de commande Nom : -overrelief
Base de données Nom : overRelief
Base de données Classe : OverRelief
  Spécifie le relief qu'adopte le bouton, lorsque le curseur de la souris se trouve dessus. En utilisant les valeurs -relief flat (plat) -overrelief raised (protubérant), cette option peut être utilisée pour construire des barres à outils. Si la valeur de cette option est la chaîne vide, le passage du curseur de la souris sur le bouton, ne provoque aucun changement d'aspect. La chaîne vide est la valeur par défaut.

Ligne de commande Nom : -state
Base de données Nom : state
Base de données Classe : State
  Spécifie un des trois états possible pour le bouton : normal, active (actif), ou disable (désactivé). Dans l'état normal, le bouton est affiché avec les couleurs de premier plan et de fond, défines par les options foreground et background. Lorsque le curseur de la souris pointe sur le bouton, celui-ci passe de l'état passif vers l'état actif. Dans cet état, le bouton est affiché avec les couleurs de premier plan et de fond, défines par les options activeForeground et activeBackground. L'état inactif signifie que le bouton est insensible : le binding par défaut refuse d'activer le widget et ignore l'action "presser le bouton gauche de la souris". Dans cet état, les options disablesForeground et background déterminent l'aspect du bouton.

Ligne de commande Nom : -width
Base de données Nom : width
Base de données Classe : Width
  Spécifie la largeur du bouton. Si une image ou un bitmap est affiché dans le bouton, alors la valeur est en unité d'écran (i.e. n'importe quelle formulation acceptée par Tk_GetPixels) ; pour le texte, l'unité est le caractère. Si cette option n'est pas spécifiée, la largeur du bouton est automatiquement calculée à partir de la taille de l'image, du bitmap ou du texte à afficher.

### DESCRIPTION

La commande button crée une nouvelle fenêtre (dénommée par la valeur de nom_du_bouton) et place un bouton dans cette fenêtre. Afin de configurer l'aspect du bouton i.e. sa couleur, la fonte du texte, ou son relief, les options décrites ci-dessus peuvent être spécifiées sur la ligne de commande ou dans les options de la base de données. Lors de l'appel de la commande, la fenêtre nom_du_bouton ne doit pas exister, par contre tous ses parents doivent déjà exister.

Un bouton est un widget qui affiche une chaîne de caractères, un bitmap ou une image. Si du texte est affiché, il doit être en une seule fonte, mais il peut tout de même se présenter sur plusieurs lignes (dans ce cas, le texte peut contenir des sauts à la ligne, ou avoir été scindé suite à la valeur de l'option wrapLength). En utilisant l'option underline, un des caractères de la chaîne peut être souligné. Le bouton peut s'afficher de 3 façons différentes, selon la valeur de l'option state; il peut prendre un aspect de protubérance, de cavité ou plat ; il peut aussi être configuré pour scintiller. Quand un utilisateur invoque le bouton (le curseur de la souris étant positionné sur le bouton, le bouton 1 de la souris est activé), la commande Tcl spécifiée par l'option -command est appelée.

### COMMANDES ASSOCIEES AU WIDGET

La commande button créé une nouvelle commande Tcl nommée nom_du_bouton. Cette commande peut être utilisée pour réaliser des actions sur le widget. La syntaxe de cette commande est la suivante :

    nom_du_bouton option ?arg arg ...?

Option et les arg déterminent complètement le comportement de la commande. Les actions suivantes sont possibles :

nom_du_bouton cget option
  Retourne la valeur courante des options de configuration. A chaque option est associée la valeur correspondante. Option peut être n'importe laquelle des options acceptées par la commande button.

nom_du_bouton configure ?option? ?valeur option valeur ...?
  Interroge ou modifie la valeur des options du widget. Si aucune option n'est spécifiée, retourne une liste décrivant tous les options possibles de nom_du_bouton (voir Tk_ConfigureInfo pour des informations sur le format de cette liste). Si option est spécifiée sans aucune valeur associée, alors la commande retourne une liste décrivant cette option (cette liste est la sous-liste correspondante à option, de la liste retournée si aucune option n'est spécifiée). Si une ou plusieurs paires option-valeur sont spécifiées, alors la commande modifie la valeur des options données pour les valeurs indiquées ; dans ce cas la commande retourne une chaîne vide. Option peut être n'importe laquelle des options acceptées par la commande button.

nom_du_bouton flash
  Fait scintiller le bouton. Le scintillement est obtenu en réaffichant le bouton plusieurs fois, en alternant les couleurs actives et normales. Lorsque le scintillement est terminé, le bouton retourne dans l'état (actif ou normal) dans lequel il se trouvait avant de scintiller. La commande est ignorée si le bouton est dans l'état disabled (désactivé).

nom_du_bouton invoke
  Appelle la commande Tcl associée au bouton, si elle est définie. La valeur retournée est celle retournée par la commande Tcl ; si aucune commande n'est associée, une chaîne vide est retournée. Cette commande est ignorée si l'état du bouton est disabled (désactivé).

### BINDINGS PAR DEFAUT

Tk créé automatiquement une classe de bindings, qui définissent le comportement par défaut des boutons :

[1]
  Un bouton est activé dès que le curseur de la souris passe dessus, et se désactive dès que le curseur le quitte. Sous une fenêtre, le binding est actif uniquement quand le bouton 1 a été pressé sur le bouton.

[2]
  Le relief du bouton est changé pour la valeur sunken, quand le bouton 1 de la souris est pressé sur le bouton, le relief est restauré à sa valeur initiale quand le bouton 1 est relaché.

[3]
  Si le bouton 1 de la souris, est pressé sur un bouton et relaché ensuite, tandis que le pointeur de la souris se trouve toujours sur le bouton, alors l'action associée au bouton est invoquée. Si le curseur n'est plus sur le bouton quand le bouton 1 est relaché, alors l'action associée n'est pas invoquée.

[4]
  Quand un bouton possède le focus d'entrée, la barre d'espace cause l'invoquation du bouton.

Si l'état du bouton est disabled (désactivé) alors aucune des actions ci-dessus n'est invoquée : le bouton est complètement passivé.

Le comportement des boutons peut être changé en définissant de nouveaux bindings pour un widget donné, ou en redéfinissant la classe des bindings.

### MOTS CLES

button, widget

    Copyright © 1990-1994 The Regents of the University of California.
    Copyright © 1994-1996 Sun Microsystems, Inc.
    Copyright © 1995-1997 Roger E. Critchlow Jr.

Copyright © 2003 - Le Portail Tcl/Tk Francophone.