• Aucun résultat trouvé

Op´ erations sur les boutons-radios

Avec l’instruction :

radiobutton cheminCase?options?

la commande radiobutton cr´ee une nouvelle commande Tcl dont le nom est pr´ecis´e- ment cheminBoutonRadio. Cette commande peut ˆetre compl´et´ee par des sous- commandes permettant d’effectuer diverses op´erations concernant le bouton radio. La forme g´en´erale est :

cheminBoutonRadio op´eration?arg arg ...?

Les op´erations reconnues par les composantes de type radiobutton sont les sui- vantes :

cheminBoutonRadio cget option

Renvoie la valeur courante de l’option de configuration sp´ecifi´ee par l’argu- ment option. L’argument option peut ˆetre une quelconque des valeurs ac- cept´ees par la commande radiobutton.

cheminBoutonRadio configure?option??valeur option valeur ...?

Permet d’obtenir ou de modifier les options de configuration du bouton radio. Si l’argument option n’est pas sp´ecifi´e, la commande renvoie une liste de toutes les options disponibles pour cheminCase.

Si l’argument option est sp´ecifi´e sans une valeur correspondante, la commande renvoie une liste d´ecrivant l’option nomm´ee. Si un ou plusieurs couples option- valeur sont sp´ecifi´es, les options en question se voient attribuer la valeur cor- respondante : la commande renvoie alors une chaˆıne vide. L’argument option peut ˆetre une quelconque des valeurs accept´ees par la commande radiobutton. cheminBoutonRadio deselect

D´es´electionne le bouton radio et donne `a la variable associ´ee la valeur d’une chaˆıne vide. Si le bouton radio n’´etait pas s´electionn´e, la commande est sans effet.

cheminBoutonRadio flash

Fait clignoter le bouton radio. Cet effet est obtenu en r´eaffichant `a plusieurs reprises le bouton radio en faisant alterner les couleurs de son ´etat normal et de son ´etat activ´e. `A la fin du clignotement, le bouton radio est laiss´e dans le mˆeme ´etat que lorsque la commande a ´et´e invoqu´ee. Cette commande est ignor´ee si l’´etat du bouton radio est d´esactiv´e (disabled).

cheminBoutonRadio invoke

Accomplit exactement ce qui se produirait si un utilisateur cliquait sur le bouton radio avec la souris : l’´etat du bouton radio est commut´e et la com- mande Tcl associ´ee, si elle existe, est invoqu´ee. La valeur de retour est celle de la commande Tcl ou une chaˆıne vide si aucune commande n’est associ´ee au bouton. Cette commande est ignor´ee si l’´etat du bouton radio est d´esactiv´e (disabled).

cheminBoutonRadio select

S´electionne le bouton radio et donne `a la variable associ´ee la valeur corres- pondant `a ce bouton.

Liaisons par d´efaut

Tk cr´ee automatiquement des liaisons de classe pour les boutons-radios avec les caract´eristiques suivantes :

1. sur les syst`emes Unix, un bouton radio est activ´e d`es que le pointeur de la souris passe au-dessus et d´esactiv´e d`es qu’il le quitte. Sur les syst`emes Mac et Windows, si le premier bouton de la souris est enfonc´e, le bouton radio est activ´e d`es que le pointeur se trouve dedans et d´esactiv´e d`es qu’il en ressort ; 2. lorsque le premier bouton de la souris est enfonc´e au-dessus d’un bouton radio,

l’´etat est commut´e et la commande associ´ee, si elle existe, est invoqu´ee; 3. lorsque le bouton radio est focalis´e par l’application, la barre d’espacement

peut ˆetre utilis´ee pour l’invoquer.

Si l’´etat du bouton radio est disabled, aucune des actions mentionn´ees ne se produit. Les comportements d´ecrits sont les comportements par d´efaut et peuvent toujours ˆetre modifi´es en d´efinissant de nouvelles liaisons pour des composants particuliers ou en red´efinissant les liaisons de classe.

Options standard

Les options standard support´ees par les composants de type message sont ras- sembl´ees dans le tableau12de la page suivante. Ces options sont d´ecrites en d´etail `a la page142.

-activebackground activeBackground Foreground -activeforeground activeForeground Background

-anchor anchor Anchor

-background ou -bg background Background

-bitmap bitmap Bitmap

-borderwidth ou -bd borderWidth BorderWidth

-cursor cursor Cursor

-disabledforeground disabledForeground DisabledForeground

-font font Font

-foreground ou -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

-takefocus takeFocus TakeFocus

-text text Text

-textvariable textVariable Variable

-underline underline Underline

-wraplength wrapLength WrapLength

Tab. 12 – Options standard reconnues par les composants de type message.

Options sp´ecifiques

-command command Command

Sp´ecifie une commande Tcl `a associer au bouton. Cette commande est typi- quement invoqu´ee lorsque le premier bouton de la souris est relˆach´e au-dessus de la fenˆetre du bouton radio. La variable globale du bouton sp´ecifi´ee avec l’option -variable est mise `a jour avant que la commande ne soit invoqu´ee.

-height height Height

Sp´ecifie une hauteur pour le bouton. Si une image ou un bitmap est affich´e dans le bouton radio, la valeur est mesur´ee en unit´es d’´ecran ; pour du texte elle est mesur´ee en lignes de texte. Si cette option n’est pas sp´ecifi´ee, la hauteur pour le bouton radio est calcul´ee `a partir de la taille de l’image, du bitmap ou du texte qu’il contient.

-indicatoron indicatorOn IndicatorOn

Sp´ecifie si l’indicateur doit ˆetre dessin´e ou non. La valeur de cette option doit ˆetre une valeur bool´eenne valide. Si la valeur est false, l’option relief est ignor´ee

et le relief du composant est toujours enfonc´e (sunken) lorsqu’il est s´electionn´e et relev´e (raised ) le cas ´ech´eant.

-overrelief overRelief OverRelief

Sp´ecifie un relief alternatif pour le bouton radio, `a utiliser lorsque le curseur de la souris se trouve au-dessus de lui. Cette option peut ˆetre utilis´ee pour fabriquer des boutons de barre d’outils en utilisant la configuration suivante :

-relief flat -overrelief raised

Si la valeur pass´ee `a cette option est la chaˆıne vide, aucun relief alternatif n’est utilis´e lorsque le curseur de la souris passe au-dessus du bouton radio. La chaˆıne vide est la valeur par d´efaut.

-selectcolor selectColor Background

Sp´ecifie une couleur de fond `a utiliser lorsque le bouton radio est s´electionn´e. Si indicatorOn est true, la couleur s’applique `a l’indicateur. Sous Windows, cette couleur est utilis´ee comme arri`ere-plan pour l’indicateur ind´ependamment de l’´etat de la s´election. Si indicatorOn est false, cette couleur est utilis´ee comme arri`ere- plan pour le composant entier, `a la place de -background ou -activebackground, chaque fois qu’il est s´electionn´e. Si l’option est sp´ecifi´ee comme une chaˆıne vide, aucune couleur sp´eciale n’est utilis´ee lorsque le bouton radio est s´electionn´e.

-selectimage selectImage SelectImage

Sp´ecifie une image `a afficher (`a la place de l’option image) lorsque le bouton radio est s´electionn´e. Cette option est ignor´ee `a moins que l’option image n’ait ´et´e sp´ecifi´ee.

-state state State

Sp´ecifie l’un des trois ´etats normal, active, ou disabled pour le bouton radio. Dans l’´etat normal, le bouton radio est affich´e en utilisant les options foreground et background. L’´etat activ´e est typiquement utilis´e lorsque la souris est au-dessus du bouton radio. Dans l’´etat activ´e, le bouton radio est affich´e en utilisant les options activeForeground et activeBackground. L’´etat d´esactiv´e (disabled ) signifie que le bouton radio ne r´eagit plus : les liaisons par d´efaut refuseront d’activer le bouton et ignoreront les clics de souris. Dans cet ´etat les options disabledForeground et background d´eterminent comment le bouton doit ˆetre affich´e.

-value value Value

Sp´ecifie la valeur `a stocker dans la variable associ´ee au bouton radio chaque fois que celui-ci est s´electionn´e.

-variable variable Variable

Sp´ecifie le nom d’une variable globale `a fixer pour indiquer que le bouton ra- dio est s´electionn´e ou non. Les modifications de cette variable ont pour effet de

s´electionner ou d´eselectionner le bouton lui-mˆeme. Par d´efaut, cette variable s’ap- pelle selectedButton.

-width width Width

Sp´ecifie une largeur pour le bouton. Si une image ou un bitmap est affich´e dans le bouton radio, la valeur est mesur´ee en unit´es d’´ecran ; pour du texte elle est mesur´ee en nombre de caract`eres. Si cette option n’est pas sp´ecifi´ee, la largeur pour le bouton radio est calcul´ee `a partir de la taille de l’image, du bitmap ou du texte qu’il contient.

raise

Modifie l’ordre d’empilement des fenˆetres.

Syntaxe

raise fenˆetreA?fenˆetreB?

Description

Si l’argument fenˆetreB est omis, la commande fait passer la fenˆetre fenˆetreA au-dessus de toutes les fenˆetres collat´erales dans l’ordre d’empilement.

Si l’argument fenˆetreB est sp´ecifi´e, il doit indiquer le nom de chemin d’une fenˆetre qui est soit une fenˆetre collat´erale (descendante du mˆeme parent) de la fenˆetre fenˆetreA, soit un descendant d’une fenˆetre collat´erale. Dans ce cas, la com- mande raise ins`ere la fenˆetre fenˆetreA imm´ediatement au-dessus de celle d´esign´ee par fenˆetreB ou du parent de fenˆetreB si celui-ci est un collat´eral de fenˆetreA (ce qui revient alors `a faire descendre la fenˆetre dans l’ordre d’empilement !).

scale

Permet de cr´eer et de manipuler des ´echelles gradu´ees

Syntaxe

scale chemin ´Echelle?options?

Description

La commande scale cr´ee une nouvelle fenˆetre (indiqu´ee par l’argument chemin- ´

Echelle) et en fait un composant graphique de type scale. On peut sp´ecifier des options suppl´ementaires soit par une ligne de commandes, soit directement dans la base de ressources pour configurer certaines caract´eristiques du bouton telles que la couleur, la police, le texte, le relief initial etc. La commande scale renvoie la valeur de son argument chemin ´Echelle. Au moment de son invocation, il ne doit exister aucune autre fenˆetre nomm´ee chemin ´Echelle, mais en revanche l’objet parent de chemin ´Echelle doit exister effectivement.

Une ´echelle est un composant graphique qui affiche une glissi`ere rectangulaire et un petit curseur. La glissi`ere correspond `a un intervalle de nombres r´eels que l’on d´efinit au moyen des options -from, -to et -resolution. La position du curseur sur l’´echelle permet de s´electionner une valeur r´eelle dans cet intervalle. Chaque fois que la valeur de l’´echelle est modifi´ee, une commande Tcl d´efinie grˆace `a l’op- tion -command est invoqu´ee afin d’informer d’autres composants graphiques. Par ailleurs, la valeur de l’´echelle peut ˆetre li´ee `a une variable Tcl au moyen de l’option -variable pour que les modifications apport´ees `a l’une se refl`etent sur l’autre et r´eciproquement.

On peut pr´eciser trois caract´eristiques dans les ´echelles que l’on peut activer ou d´esactiver `a volont´e au moyen d’options appropri´ees :

– une ´etiquette qui apparaˆıt en haut `a droite des ´echelles verticales ou en haut `a gauche des ´echelles horizontales ;

– un nombre dispos´e imm´ediatement `a gauche du curseur si l’´echelle est verti- cale ou imm´ediatement au-dessus si elle est horizontale ;

– une s´erie de rep`eres num´eriques `a gauche de la glissi`ere si celle-ci est verticale ou imm´ediatement en dessous si elle est horizontale.