scrollbar

 

scrollbar - Crée et manipule les widgets scrollbar


SYNTAXE

 scrollbar pathName ?options?

OPTIONS STANDARD


 -activebackground
 -background
 -borderwidth
 -cursor
 -highlightbackground
 -highlightcolor
 -highlightthickness
 -jump
 -orient
 -relief
 -repeatdelay
 -repeatinterval
 -takefocus
 -troughcolor

OPTIONS SPÉCIFIQUES AU WIDGET


Command-Line Name: -activerelief Database Name: activeRelief Database Class: ActiveRelief Indique le relief à utiliser à l'affichage de l'élément actif, s'il existe. Les éléments autres que l'élément actif sont toujours affichés avec un relief "raised".

Command-Line Name: -command Database Name: command Database Class: Command Indique le préfixe de la commande Tcl à appeler pour changer la vue dans le widget associé à la scrollbar. Quand un utilisateur demande un changement de la vue en manipulant les scrollbar, une commande Tcl est appelée. La commande courante consiste en cette option suivie par une information supplémentaire comme décrit plus bas. Cette option a presque toujours une valeur comme .t xview ou .t yview, consistant du nom d'un widget et soit de xview (si la scrollbar est dédiée au défilement horizontal) ou de yview (pour le défilement vertical). Tous les widgets scrollables ont des commandes xview et yview qui attendent exactement les arguments supplémentaires ajoutés par la scrollbar comme décrit dans COMMANDES DE DEFILEMENT ci-dessous.

Command-Line Name: -elementborderwidth Database Name: elementBorderWidth Database Class: BorderWidth Indique la largeur des bordures dessinées autour des éléments internes de la scrollbar (les deux flèches et l'ascenseur). La valeur peut prendre n'importe quelle des formes acceptables par GetPixels. Si cette valeur est inférieure à zéro, la valeur de l'option borderWidth est utilisée à sa place.

Command-Line Name: -width Database Name: width Database Class: Width Indique la dimension étroite désirée de la fenêtre scrollbar, non inclue la bordure 3-D, si elle existe. Pour les scrollbars verticales ce sera la largeur et pour les scrollbars horizontales ce sera la hauteur. La valeur doit avoir n'importe quelle des formes acceptables par GetPixels.


DESCRIPTION


La commande scrollbar crée une nouvelle fenêtre (indiquée par l'argument pathName ) et en fait un widget scrollbar. Des options supplémentaires, décrites ci-dessus, peuvent être spécifiées sur la ligne de commande ou dans la base de données d'options pour configurer les aspects de la scrollbar comme ses couleurs, orientation, et relief. La commande scrollbar retourne son argument pathName. A l'instant ou cette commande est appelée, il ne doit pas exister de fenêtre nommée pathName, mais le parent de pathName doit exister.

Une scrollbar est un widget qui affiche deux flèches, une à chaque extrémité de la scrollbar, et un ascenseur dans la partie médiane de la scrollbar. Elle renseigne sur ce qui est visible dans une fenêtre associée qui affiche un document quelconque (comme un fichier édité ou un dessin). Les positions et tailles de l'ascenseur indiquent quelle partie du document est visible dans la fenêtre associée. Par exemple, si l'ascenseur d'une scrollbar verticale en occupe le tiers supérieur, cela signifie que la fenêtre associée affiche le tiers supérieur du document.

Les scrollbars peuvent être utilisées pour ajuster la vue dans la fenêtre associée en cliquant ou glissant la souris. Voir la section BINDINGS ci-dessous pour les détails.


ÉLÉMENTS


Une scrollbar affiche cinq éléments, auxquels les commandes widget de la scrollbar se réfèrent:

arrow1 La flèche de gauche ou du haut dans la scrollbar.

trough1 La région entre l'ascenseur et arrow1.

slider Le rectangle qui indique ce qui est visible dans le widget associé.

trough2 La région entre l'ascenseur et arrow2.

arrow2 La flèche de droite ou du bas dans la scrollbar.


COMMANDES DE WIDGET


La commande scrollbar crée une nouvelle commande Tcl dont le nom est pathName. Cette commande peut être utilisée pour appeler diverses opérations sur le widget. Elle a la forme générale suivante:

 ''pathName option ''?''arg arg ...''?

Option et les args déterminent le comportement exact de la commande. Les commandes suivantes sont possibles pour les widgets scrollbar:

pathName activate ?élément? Marque l'élément indiqué par élément comme actif, ce qui conditionnera son affichage selon les options activeBackground et activeRelief. Les seules valeurs d'éléments admises par cette commande sont arrow1, slider, ou arrow2. Si n'importe quelle autre valeur est spécifiée alors aucun élément de la scrollbar ne sera actif. Si élément n'est pas spécifié, la commande retourne le nom de l'élément qui est actuellement actif, ou une chaîne vide si aucun élément n'est actif.

pathName cget option Retourne la valeur courante de l'option de configuration indiquée par option. Option peut prendre n'importe quelle des valeurs acceptées par la commande scrollbar.

pathName configure ?option? ?valeur option valeur ...? Interroge ou modifie les options de configuration du widget. Si aucune option n'est spécifiée, retourne une liste décrivant toutes les options disponibles pour pathName (voir ConfigWidg pour une information sur le format de cette liste). Si option est spécifié sans valeur, alors la commande retourne une liste décrivant l'option désignée (cette liste sera identique à la correspondante sous-liste de la valeur retournée si aucune option n'est spécifiée). Si une ou plusieurs paires option-valeur sont spécifiées, alors la commande donne aux option(s) les valeur(s) indiquées; dans ce cas la commande retourne une chaîne vide. Option peut prendre n'importe quelle des valeurs acceptées par la commande scrollbar.

pathName delta deltaX deltaY Retourne un nombre réel indiquant la variation fractionnelle du paramètre de la scrollbar qui correspond à un changement de position de l'ascenseur. Par exemple, si la scrollbar est horizontale, le résultat indique de combien le paramètre doit varier pour déplacer l'ascenseur de deltaX pixels à droite (deltaY est ignoré dans ce cas). Si la scrollbar est verticale, le résultat indique de combien le paramètre doit varier pour déplacer l'ascenseur de deltaY pixels vers le bas. L'argument et le résultat peuvent être nuls ou négatifs.

pathName fraction x y Retourne un nombre réel entre 0 et 1 indiquant où le point indiqué par x et y est situé dans la scrollbar. La valeur 0 correspond au haut ou à la gauche, la valeur 1 correspond au bas ou la droite, 0.5 corresponds au milieu, et ainsi de suite. X et y doivent être des coordonnées en pixels relatives à la scrollbar. Si x et y se réfèrent à un point en dehors de la scrollbar, le point le plus proche à l'intérieur de celle-ci est utilisé.

pathName get Retourne les paramètres de la scrollbar sous la forme d'une liste dont les éléments sont les arguments de la plus récente commande set.

pathName identify x y Retourne le nom de l'élément au point indiqué par x et y (comme arrow1), ou une chaîne vide si le point n'est situé sur aucun élément de la scrollbar. X et y doivent être des coordonnées en pixels relatives à la scrollbar.

pathName set premier dernier cette commande est appelée par le widget associé à la scrollbar pour lui indiquer la vue courante dans le widget. La commande attend deux arguments, chacun des deux est une fraction réelle entre 0 et 1. Les fractions décrivent l'étendue du document visible dans le widget associé. Par exemple, si premier égale 0.2 et dernier égale 0.4, cela signifie que la première partie du document visible dans la fenêtre est 20% du document, et là dernière partie visible à 40%.


COMMANDES DE DÉFILEMENT


Quand l'utilisateur interagit avec la scrollbar, par exemple en cliquant-tirant l'ascenseur, la scrollbar notifie le widget associé qu'il doit modifier sa vue. La scrollbar envoie la notification en évaluant une commande Tcl généré à partir de l'option -command de la scrollbar. La commande peut prendre n'importe quelle des formes suivantes. Dans chaque cas, prefix est le contenu de l'option -command, qui a généralement une form comme .t yview

prefix moveto fraction Fraction est un nombre réel entre 0 et 1. Le widget doit ajuster sa vue pour faire apparaître le point donné par fraction au début du widget. Si fraction est 0 elle se réfère au début du document. 1.0 se réfère à la fin du document, 0.333 se réfère au point à un tiers du document, et ainsi de suite.

prefix scroll qui signifie un déplacement de une unité vers le unités Le widget doit ajuster sa vue nombre unités. Les unités sont définies en ce qui a un sens pour le widget, comme des caractères ou des lignes dans un widget texte. Nombre est soit 1, qui signifie un déplacement de une unité vers le le haut ou la gauche de la fenêtre, ou -1, qui signifie un déplacement de une unité vers le bas de ou la droite de la fenêtre.

prefix scroll nombrepages Le widget doit ajuster sa vue de nombre pages. C'est au widget de définir la sens d'une page; généralement elle est légèrement inférieure à ce qui tient dans la fenêtre, il y a ainsi un léger recouvrement entre l'ancienne et la nouvelle vue. Nombre est soit 1, qui signifie que la page suivante doit devenir visible, ou -1, qui signifie que la page précédente doit devenir visible.


ANCIENNE SYNTAXE


Dans les versions de Tk précédant la 4.0, les commandes set et get utilisaient une forme différente. Cette forme est toujours supportée pour compatibilité ascendante, mais elle est obsolète. Avec l'ancienne syntaxe, la commande set avait la forme suivante:

pathName set totalUnits windowUnits firstUnit lastUnit Sous cette forme les arguments sont tous des entiers. TotalUnits donne la taille totale de l'objet affiché dans le widget associé. Le sens d'une unité depend du widget associé; par exemple, dans un éditeur de texte les unités correspondraient à des lignes de texte. WindowUnits indique le nombre total d'unités qui tiennent dans la fenêtre associée en même temps. FirstUnit et lastUnit donnent les indices des premières et dernières unités actuellement visible dans la fenêtre associée (zéro correspond à la première unité de l'objet).

Avec l'ancienne syntaxe la commande get retourne une liste de quatre entiers, consistant des valeurs de totalUnits, windowUnits, firstUnit, et lastUnit à partir de la dernière commande set.

Les commandes générées par les scrollbars ont également une forme différente quand l'ancienne syntaxe est utilisée:

prefix unit Unit est un entier qui indique ce qui doit apparaître en haut ou à gauche de la fenêtre associée au widget. Il a le même sens que les arguments firstUnit et lastUnit de la commandeset.

La commande set la plus récente détermine si oui ou non il faut utiliser l'ancienne syntaxe. Si deux arguments réels sont fournis alors la nouvelle syntaxe sera utilisée dans le futur, si quatre arguments entiers sont utilisés alors l'ancienne syntaxe sera utilisée.


BINDINGS


Tk automatiquement crée des bindings de classe pour les scrollbars qui leur donnent le comportement par défaut suivant. Si le comportement est différent pour les scrollbars verticales et horizontales, le comportement horizontal est décrit entre parenthèses.

[1] L'appui sur le bouton1 sur arrow1 provoque le déplacement de la vue dans le widget associé de une unité vers le haut (la gauche) ainsi le document semble se déplacer vers le bas (la droite) d'une unité. Si le bouton est maintenu enfoncé, l'action se répète.

[2] L'appui sur le bouton1 au-dessus de trough1 provoque le déplacement de la vue dans le widget associé d'une page écran vers le haut (la gauche) ainsi le document semble se déplacer vers le bas (la droite) d'une page écran. Si le bouton est maintenu enfoncé, l'action se répète.

[3] L'appui sur le bouton1 au-dessus de l'ascenseur et son déplacement provoque le déplacement de la vue avec l'ascenseur. Si l'option jump est true, alors la vue n'est pas déplacée avec l'ascenseur; elle change seulement quand le bouton de la souris est relâché.

[4] L'appui sur le bouton1 au-dessus de trough2 provoque le déplacement de la vue dans le widget associé d'une page écran vers le bas (la droite) ainsi le document semble se déplacer vers le haut (la gauche) d'une page écran. Si le bouton est maintenu enfoncé, l'action se répète.

[5] L'appui sur le bouton1 au-dessus arrow2 provoque le déplacement de la vue dans le widget associé de une unité vers le bas (la droite) ainsi le document semble se déplacer vers le haut (la gauche) d'une unité. Si le bouton est maintenu enfoncé, l'action se répète.

[6] Si bouton2 est enfoncé au-dessus du "trough" ou de l'ascenseur, la vue est positionnée pour correspondre à la position de la souris; déplacer la souris avec le bouton2 enfoncé provoque le déplacement de la vue avec la souris. Si bouton2 est enfoncé au-dessus d'une des flèches, cela provoque le même comportement que l'appui sur le bouton1.

[7] Si bouton1 et la touche Contrôle sont enfoncés simultanément, alors si la souris est au-dessus de arrow1 ou de trough1 la vue change vers l'extrémité supérieure (gauche) du document; si la souris est au-dessus de arrow2 ou de trough2 la vue change vers l'extrémité inférieure (droite) du document; si la souris est partout ailleurs alors l'appui sur le bouton n'a pas d'effet.

[8] Dans les scrollbars verticales les touches Haut et Bas ont les même comportement que les clics de souris au-dessus de arrow1 et de arrow2, respectivement. Dans les scrollbars horizontales ces touches n'ont pas d'effet.

[9] Dans les scrollbars verticales Control-Up et Control-Down ont les même comportement que les clics de souris au-dessus de trough1 et de trough2, respectivement. Dans les scrollbars horizontales ces touches n'ont pas d'effet.

[10] Dans les scrollbars horizontales les touches Haut et Bas ont les même comportements que les clics de souris au-dessus de arrow1 et de arrow2, respectivement. Dans les scrollbars verticales ces touches n'ont pas d'effet.

[11] Dans les scrollbars horizontales Control-Up et Control-Down ont les même comportements que les clics de souris au-dessus trough1 et trough2, respectivement. Dans les scrollbars verticales ces touches n'ont pas d'effet.

[12] Les touches Prior et Next ont les même comportements que les clics de souris au-dessus de trough1 et de trough2, respectivement.

[13] La touche Home ajuste la vue vers le haut (coté gauche) du document.

[14] La touche End ajuste la vue vers le bas (coté droit) du document.


Traduit par Michel Salvagniac 2002-2003

Copyright © 2003 - Le Wiki Tcl/Tk Francophone.


Catégorie Manuel Tcl/Tk