- NAME
- canvas - Créer et manipuler le widget canvas
- SYNOPSIS
- canvas nom_du_canvas ?options?
- OPTIONS STANDARDS
- -background ou -bg, background, Background
- -borderwidth ou -bd, borderWidth, BorderWidth
- -cursor, cursor, Cursor
- -highlightbackground, highlightBackground, HighlightBackground
- -highlightcolor, highlightColor, HighlightColor
- -highlightthickness, highlightThickness, HighlightThickness
- -insertbackground, insertBackground, Foreground
- -insertborderwidth, insertBorderWidth, BorderWidth
- -insertofftime, insertOffTime, OffTime
- -insertontime, insertOnTime, OnTime
- -insertwidth, insertWidth, InsertWidth
- -relief, relief, Relief
- -selectbackground, selectBackground, Foreground
- -selectborderwidth, selectBorderWidth, BorderWidth
- -selectforeground, selectForeground, Background
- -state
- -takefocus, takeFocus, TakeFocus
- -xscrollcommand, xScrollCommand, ScrollCommand
- -yscrollcommand, yScrollCommand, ScrollCommand
- OPTIONS SPECIFIQUES AU WIDGET
- -closeenough, closeEnough, CloseEnough
- -confine, confine, Confine
- -height, height, Height
- -scrollregion, scrollRegion, ScrollRegion
- -state, state, State
- -width, width, width
- -xscrollincrement, xScrollIncrement, ScrollIncrement
- -yscrollincrement, yScrollIncrement, ScrollIncrement
- INTRODUCTION
- LISTE D'AFFICHAGE
- IDENTIFIANTS DES OBJETS ET TAGS
- COORDONNEES
- TRANSFORMATIONS
- INDICES
- nombre
- end
- insert
- sel.first
- sel.last
- @x,y
- MOTIFS EN POINTILLES
- COMMANDES ASSOCIEES AU WIDGET
- nom_du_canvas addtag tag spécification_de_recherche ?arg arg ...?
- above tagOùId
- all
- below tagOùId
- closest x y ?halo? ?en_premier?
- enclosed x1 y1 x2 y2
- overlapping x1 y1 x2 y2
- withtag tagOùId
- nom_du_canvas bbox tagOùId ?tagOùId tagOùId ...?
- nom_du_canvas bind tagOùId ?séquence? ?commande?
- nom_du_canvas canvasx screenx ?espacement_de_la_grille?
- nom_du_canvas canvasy screeny ?espacement_de_la_grille?
- nom_du_canvas cget option
- nom_du_canvas configure ?option? ?valeur? ?option valeur ...?
- nom_du_canvas coords tagOùId ?x0 y0 ...?
- nom_du_canvas coords tagOùId ?liste_des_coordonnées?
- nom_du_canvas create type x y ?x y ...? ?option valeur...?
- nom_du_canvas create type liste_des_coordonnées ?option valeur ...?
- nom_du_canvas dchars tagOùId premier ?dernier?
- nom_du_canvas delete ?tagOùId tagOùId ...?
- nom_du_canvas dtag tagOùId ?tag à supprimer?
- nom_du_canvas find commande_de_recherche ?arg arg ...?
- nom_du_canvas focus ?tagOùId?
- nom_du_canvas gettags tagOùId
- nom_du_canvas icursor tagOùId index
- nom_du_canvas index tagOùId index
- nom_du_canvas insert tagOùId avant_ceci chaîne
- nom_du_canvas itemcget tagOùId option
- nom_du_canvas itemconfigure tagOùId ?option? ?valeur? ?option valeur ...?
- nom_du_canvas lower tagOùId ?en_dessous_de_celui-ci?
- nom_du_canvas move tagOùId x_à_ajouter y_à_ajouter
- nom_du_canvas postscript ?option valeur option valeur ...?
- -colormap nom_de_variable
- -colormode mode
- -file nom_de_fichier
- -fontmap nom_de_variable
- -height taille
- -pageanchor ancre
- -pageheight taille
- -pagewidth taille
- -pagex position
- -pagey position
- -rotate booléen
- -width taille
- -x position
- -y position
- nom_du_canvas raise tagOùId ?au_dessus_de_celui-ci?
- nom_du_canvas scale tagOùId xOrigine yOrigine xEchelle yEchelle
- nom_du_canvas scan option args
- nom_du_canvas scan mark x y
- nom_du_canvas scan dragto x y ?gain?.
- nom_du_canvas select option ?tagOùId arg?
- nom_du_canvas select adjust tagOùId index
- nom_du_canvas select clear
- nom_du_canvas select from tagOùId index
- nom_du_canvas select item
- nom_du_canvas select to tagOùId index
- nom_du_canvas type tagOùId
- nom_du_canvas xview ?args?
- nom_du_canvas xview
- nom_du_canvas xview moveto fraction
- nom_du_canvas xview scroll nombre quoi
- nom_du_canvas yview ?args?
- nom_du_canvas yview
- nom_du_canvas yview moveto fraction
- nom_du_canvas yview scroll nombre quoi
- PRESENTATION DES DIFFERENTS TYPES D'OBJETS
- OPTIONS COMMUNES A TOUS LES OBJETS
- -dash motif
- -activedash motif
- -disableddash motif
- -dashoffset offset
- -fill couleur
- -activefill couleur
- -disabledfill couleur
- -outline couleur
- -activeoutline couleur
- -disabledoutline couleur
- -offset offset
- -outlinestipple bitmap
- -activeoutlinestipple bitmap
- -disabledoutlinestipple bitmap
- -stipple bitmap
- -activestipple bitmap
- -disabledstipple bitmap
- -state état
- -tags liste_de_tags
- -width largeur_du_contour
- -activewidth largeur_du_contour
- -disabledwidth largeur_du_contour
- OBJETS DE TYPE ARC
- -extent degrees
- -start degrees
- -style type
- OBJETS DE TYPE BITMAP
- -anchor position_de_l'ancre
- -background couleur
- -activebackground bitmap
- -disabledbackground bitmap
- -bitmap bitmap
- -activebitmap bitmap
- -disabledbitmap bitmap
- -foreground couleur
- -activeforeground bitmap
- -disabledforeground bitmap
- OBJETS DE TYPE IMAGE
- -anchor position_de_l'ancre
- -image nom
- -activeimage nom
- -disabledimage nom
- OBJETS DE TYPE LIGNE
- -arrow où
- -arrowshape forme
- -capstyle style
- -joinstyle style
- -smooth booléen
- -splinesteps nombre
- OBJETS DE TYPE OVALE
- OBJETS DE TYPE POLYGONE
- -joinstyle style
- -smooth booléen
- -splinesteps nombre
- OBJETS DE TYPE RECTANGLE
- OBJETS DE TYPE TEXTE
- -anchor position_de_l'ancre
- -font nom_de_la_fonte
- -justify comment
- -text chaîne
- -width longeur_de_la_ligne
- OBJETS DE TYPE WINDOW
- -anchor position_de_l'ancre
- -height pixels
- -width pixels
- -window nom_du_canvas
- DEFINITION DE NOUVEAUX TYPES D'OBJETS
- BINDINGS
- CREDITS
- MOTS CLES
canvas - Créer et manipuler des widgets canvas
canvas nom_du_canvas ?options?
- -background ou -bg, background, Background
- -borderwidth ou -bd, borderWidth, BorderWidth
- -cursor, cursor, Cursor
- -highlightbackground, highlightBackground, HighlightBackground
- -highlightcolor, highlightColor, HighlightColor
- -highlightthickness, highlightThickness, HighlightThickness
- -insertbackground, insertBackground, Foreground
- -insertborderwidth, insertBorderWidth, BorderWidth
- -insertofftime, insertOffTime, OffTime
- -insertontime, insertOnTime, OnTime
- -insertwidth, insertWidth, InsertWidth
- -relief, relief, Relief
- -selectbackground, selectBackground, Foreground
- -selectborderwidth, selectBorderWidth, BorderWidth
- -selectforeground, selectForeground, Background
- -state
- -takefocus, takeFocus, TakeFocus
- -xscrollcommand, xScrollCommand, ScrollCommand
- -yscrollcommand, yScrollCommand, ScrollCommand
- Ligne de commande Nom : -closeenough
- Base de données Nom : closeEnough
- Base de données Classe : CloseEnough
- Spécifit un nombre décimal indiquant à quelle distance d'un objet, doit se trouver le pointeur
de la souris, pour être considéré à l'intérieur de l'objet. La valeur par défaut est 1.0.
- Ligne de commande Nom : -confine
- Base de données Nom : confine
- Base de données Classe : Confine
- Spécifit une valeur booléenne indiquant s'il est autorisé ou non,
de fixer la vue du canvas en dehors de la région définie par l'argument
scrollRegion.
La valeur par défaut est true (vrai), ce qui signifie que la vue est contrainte
à l'intérieur de la région de scroll.
- Ligne de commande Nom : -height
- Base de données Nom : height
- Base de données Classe : Height
- Spécifit la hauteur de la fenêtre que le widget canvas doit avoir lors de sa
création, sous réserve que ceci soit possible. La hauteur peut être indiquée dans
n'importe laquelle des formes décrites dans las section COORDONNEES, ci-dessous.
- Ligne de commande Nom : -scrollregion
- Base de données Nom : scrollRegion
- Base de données Classe : ScrollRegion
- Spécifit une liste contenant quatre coordonnées définissant une région
rectangulaire. Cette région est utilisée par la fonction de scrolling et
définit la zone dans laquelle il est possible d'avoir des informations.
Chacune des coordonnées peut être spécifiée dans n'importe lequel des formats
décrits dans la section COORDONNEES ci-dessous.
- Ligne de commande Nom : -state
- Base de données Nom : state
- Base de données Classe : State
- Modifit l'état par défaut du canvas. Cet état peut être : normal,
disabled (désactivé), ou hidden (caché). Chaque objet d'un canvas peut être dans un
état qui lui est propre, et qui peut être différent de l'état par défaut.
Beaucoup d'options peuvent prendre plusieurs valeurs, permettant aux objets du canvas, d'avoir un aspect particulier
selon les différentes situations. Les options qui commencent avec active (actif), contrôlent
l'apparence de l'objet quand le pointeur de la souris passe dessus, tandis que les options
commençant par disabled (désactivé) contrôlent l'apparence quand l'état est désactivé.
Les objets du canvas qui sont désactivés, ne réagissent pas aux bindings.
- Ligne de commande Nom : -width
- Base de données Nom : width
- Base de données Classe : width
- Spécifit la largeur de la fenêtre que le widget canvas doit avoir lors de sa
création, sous réserve que ceci soit possible. La largeur peut être indiquée dans
n'importe laquelle des formes décrites dans las section COORDONNEES, ci-dessous.
- Ligne de commande Nom : -xscrollincrement
- Base de données Nom : xScrollIncrement
- Base de données Classe : ScrollIncrement
- Spécifit l'incrément pour le scrolling horizontal, la valeur peut
être indiquée dans n'importe laquelle des unités autorisées pour définir les distances
à l'écran. Si cette valeur est plus grande que zéro, la vue horizontale de la
fenêtre sera contrainte telle que la coordonnée en x du canvas, sur la partie
gauche de la fenêtre, soit toujours un multiple pair de xScrollIncrement ;
de plus, le pas du scrolling (i. e. le changement de vue quand les
flèches gauche et droite de la barre de scrolling sont séléctionnées)
a exactement la valeur xScrollIncrement. Si la valeur de cette option
est inférieure ou égale à zéro, alors le scrolling horizontal n'est pas
contraint.
- Ligne de commande Nom : -yscrollincrement
- Base de données Nom : yScrollIncrement
- Base de données Classe : ScrollIncrement
- Spécifit l'incrément pour le scrolling vertical, la valeur peut
être indiquée dans n'importe laquelle des unités autorisées pour définir les distances
à l'écran. Si cette valeur est plus grande que zéro, la vue verticale de la
fenêtre sera contrainte telle que la coordonnée en y du canvas, sur la partie
haute de la fenêtre, soit toujours un multiple pair de yScrollIncrement ;
de plus, le pas du scrolling (i. e. le changement de vue quand les
flèches du haut et du bas, de la barre de scrolling sont séléctionnées)
a exactement la valeur yScrollIncrement. Si la valeur de cette option
est inférieure ou égale à zéro, alors le scrolling vertical n'est pas
contraint.
La commande canvas crée une nouvelle fenêtre (donnée par l'argument
nom_du_canvas) et en fait un widget canvas. 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 des options. Ces options
permettent de configurer l'aspect du canvas, telles que ses couleurs ou le
relief 3-D.
La commande canvas retourne la valeur de l'argument nom_du_canvas.
Au moment où la commande est invoquée, il ne doit pas exister de fenêtre du même
nom, par contre le parent de la fenêtre, doit exister.
Les widgets canvas implémentent des graphiques structurés.
Un canvas permet d'afficher n'importe quel nombre d'objets ; ces
objets peuvent être des rectangles, des cercles, des lignes ou du texte.
Ces objets peuvent être manipulés (i.e. déplacés ou re-colorés) et des commandes
peuvent être associées aux objets, de la même façon que la commande
bind permet de lier des actions
aux widgets. Par exemple, une commande particulière peut être associée
à l'événement <Button-1>, telle que la commande soit invoquée quand le
boutton 1 de la souris est pressé, le curseur de la souris étant sur un objet.
Ceci signifit que les objets du canvas peuvent avoir un comportement défini par les
scriptes Tcl qui leur sont liés.
Les objets d'un canvas ont un ordre d'affichage. Le premier objet
de la liste d'affichage est affiché en premier, puis le prochain
de la liste, et ainsi de suite. Les objets apparaissant en dernier
peuvent cacher leur prédécesseurs. Il est parfois dit, qu'ils sont
par-desssus les objets précédents.
Quand un nouvel objet est créé, il est placé à la fin de la liste
d'affichage, par dessus tous les autres.
Certaines commandes peuvent être utilisées pour modifier l'ordre
de la liste d'affichage.
Les objets fenêtre sont une exception à la règle précédente. Le gestionnaire
de fenêtres sous-jacent impose qu'elles soient toujours dessinées par dessus
les autres objets. De plus, l'ordre d'empilement des fenêtres n'est pas affecté
par les commandes du canvas ; vous devez utiliser la commande Tk
raise and lower
à la place.
Les objets d'un widget canvas peuvent être nommés de deux façons :
par un id (identifiant) ou par un tag.
Chaque objet a un identifiant unique qui lui est affecté lors
de sa création. L'id d'un objet ne change jamais, d'autre part
cet id n'est jamais réutilisé durant toute la durée de vie du
canvas.
Chaque objet peut être associé à un certain nombre de tags.
Un tag n'est rien d'autre qu'une chaîne de caractères. Cette chaîne
peut être un mélange de caractères alphabétiques et numériques mais ne
peut - en aucun cas - être purement numérique.
Par exemple, ``x123'' est autorisé mais ``123'' est interdit.
Le même tag peut être associé à différents objets. Ceci est utilisé
en pratique, pour grouper les objets. Par exemple, tous les objets sélectionnés
peuvent avoir le tag ``selection''.
Le tag all est implicitement associé à chaque objet du canvas ;
ce tag est utilisé pour invoquer des opérations affectant tous les objets
du canvas.
Le tag current est géré automatiquement par Tk; il s'applique
à l'objet courant, i.e. l'objet le plus en avant dans la liste d'affichage, se trouvant
sous le pointeur de la souris. Si le pointeur de la souris n'est pas
dans le canvas, ou s'il ne pointe pas un objet, alors aucun objet n'a
le tag current.
Quand un objet est spécifié comme argument dans une commande du canvas,
si le spécifiant est un entier, alors il est supposé se référer au seul
objet qui possède cet id.
Si le spécifiant n'est pas un entier, alors il est supposé se référer
à tous les objets du canvas qui sont associés à ce tag.
Le symbol tagOùId est utilisé ci-dessous pour indiquer qu'un
argument spécifie un seul objet ou un tag qui regroupe zéro ou plusieurs
objets.
tagOùId peut contenir des expressions logiques de tags, utilisant
les opérateurs : '&&', '||', '^' '!', et des paranthèses regroupant
des sous-expressions. Par exemple :
.c find withtag {(a&&!b)||(!a&&b)}
ou de façon équivalente :
.c find withtag {a^b}
Cette dernière expression trouvera tous les objets qui ont un tag
"a" ou un tag "b", mais elle rejetera les objets
qui possèdent les deux tags.
Certaines commandes des widgets ne peuvent opérer que sur un
seul objet à la fois ; si tagOùId est spécifié de façon
à se référer à plusieurs objets, alors le comportement normal de cette
commande est d'utiliser le premier (le plus bas) de ces objets
dans la liste d'affichage, sur lequel la commande peut s'appliquer.
Des exceptions sont à noter et sont données dans la description
des commandes ci-dessous.
Toutes les coordonnées relatives aux canvas, sont stockées dans
des nombres décimaux.
Les coordonnées et les distances sont spécifiées en unité d'écran,
ces valeurs sont aussi des nombres décimaux, optionnellement
suivis de une ou plusieurs lettres.
Si aucune lettre n'est ajoutée alors la distance est indiquée en nombre
de pixels.
Si cette lettre est m alors la distance est indiquée en millimètres
mesurés sur l'écran ; s'il s'agit d'un c alors la distance est en centimètres :
i signifie des pouces, et p signifie des points d'impression (1/72 de pouce).
Les plus grandes valeurs de la coordonnée en y, se refèrent aux points les plus bas sur l'écran ;
les plus grandes valeurs de la coordonnée en x, se refèrent aux points les plus à droite de l'écran.
Les coordonnées peuvent être spécifiées par un nombre pair de paramètres, où par une seule
liste de paramètres contenant un nombre pair de coordonnées x et y.
Normalement l'origine du système de coordonnées d'un canvas est
le coin supérieur gauche de la fenêtre contenant le canvas.
Il est possible d'ajuster cette origine en utilisant les commandes
xview et yview du widget ; ceci est typiquement utilisé pour
le scrolling.
Il n'est pas possible d'appliquer un changement d'échelle ou une rotation,
sur le système de coordonnées d'un canvas.
Individuellement, les objets peuvent être déplacés ou subir une dilatation
, en utilisant des commandes décrites ci-dessous. En revanche, ils ne peuvent
pas subir de rotation.
Les objets texte supportent la notion d'index permettant
d'identifier des positions particulières à l'intérieur du texte.
De manière similaire, lignes et polygones supportent aussi cette
notion d'index pour identifier, insérer et supprimer des sous-ensembles
de leur coordonnées.
Les indices sont utilisés par des commandes telles que l'insertion ou la suppression
de tout un ensemble de caractères ou de coordonnées, et pour préciser la position du
curseur d'insertion. Un index peut être spécifié de différentes manières, et différents
types d'objets peuvent supporter différentes formes de spécification des indices.
Les objets texte supportent les formes suivantes d'indexes ; si vous définissez
de nouveaux objets ressemblants ou dérivés des objets texte, il sera judicieux
que chacune de ces formes soit implémentée.
Noter qu'il est possible de se référer à un caractère juste après
le dernier de l'objet texte ; ceci est nécessaire pour permettre
l'insertion de caractères à la fin du texte.
Les lignes et les polygones ne supportent pas le curseur d'insertion
et la sélection. Leur indices sont supposés être en nombre
pair, car les coordonnées apparaissent toujours en nombre pair.
- nombre
-
La position d'un caractère, dans le texte, est donnée par un
nombre décimal.
La valeur 0 se réfère au premier caractère, 1 au suivant, et ainsi
de suite. Dans le cas des lignes et des polygones, si les indexes
ont des valeurs impaires, ils seront automatiquement décrémentés de
la valeur 1.
Un nombre inférieur à zéro est traité comme s'il était nul. Pour les
polygones, les nombres inférieurs à 0 ou plus grands que la longueur
de la liste des coordonnées, seront ajustés en ajoutant ou soustrayant
la longueur, jusqu'à obtenir un résultat entre zéro et la longueur (incluse).
- end
-
Indique le caractère ou la coordonnée juste après la dernière de l'objet
(il s'agit aussi du nombre de caractères ou de coordonnées dans l'objet).
- insert
-
Indique le caractère juste avant la position du curseur d'insertion de l'objet.
Ceci n'est pas valable pour les lignes et les polygones.
- sel.first
-
Indique le premier caractère sélectionné dans l'objet.
Si la sélection n'est pas dans l'objet, alors cette forme est illégale.
- sel.last
-
Indique le dernier caractère sélectionné dans l'objet.
Si la sélection n'est pas dans l'objet, alors cette forme est illégale.
- @x,y
-
Indique le caractère ou la coordonnée au point repéré par x et
y, où x et y sont spécifiés dans le système de coordonnées
du canvas.
Si x et y sont en-dehors de la zone recouverte par l'objet texte,
alors elles se réfèrent au premier ou au dernier caractère de la ligne la plus proche
du point donné.
Beaucoup d'objets supportent la notion de contours en pointillés.
La première syntaxe possible est une liste d'entiers. Chaque élément
représente le nombre de pixels d'un segment de la ligne. Seuls les
segments impairs sont dessinés avec la couleur du contour. Les autres
segments sont transparents.
La seconde syntaxe possible est une liste de caractères contenant seulement
5 caractères possibles [.,-_ ]. Le caractère d'espacement peut être
utilisé pour agrandir l'espace entre les éléments de la ligne, et ne peut
pas apparaître comme premier caractère d'une chaîne. Voici quelques exemples :
-dash . = -dash {2 4}
-dash - = -dash {6 4}
-dash -. = -dash {6 4 2 4}
-dash -.. = -dash {6 4 2 4 2 4}
-dash {. } = -dash {2 8}
-dash , = -dash {4 4}
La principale différence de syntaxe avec la précédente, est que la
forme est conservée. Ceci signifie que toutes les valeurs de la liste dash
seront multipliées par la largeur de la ligne avant l'affichage.
Cette opération assure que le "." sera toujours affiché comme un point
et que le "-" apparaîtra toujours comme un pointillé, indépendamment de
la largeur de la ligne.
Sur les systèmes qui ne supportent qu'un nombre limité de motifs
en pointillés, le motif choisi sera le plus proche de celui demandé, parmi ceux qui sont possibles.
Par exemple, sur Windows, seuls les 4 premiers exemples ci-dessus sont
valables. Si l'un des deux derniers motifs est demandé, c'est le premier
motif qui sera affiché.
La commande canvas crée une nouvelle commande Tcl dont le nom
est nom_du_canvas. Cette commande peut être utilisée pour invoquer
différentes opérations sur le widget. Elle a la forme suivante :
nom_du_canvas option ?arg arg ...?
Option et les args déterminent le comportement
exact de la commande ;
Les commandes suivantes sont possibles pour le canvas widget :
- nom_du_canvas addtag tag spécification_de_recherche ?arg arg ...?
-
Pour chaque objet vérifiant les contraintes spécifiées par
spécification_de_recherche et les args, ajoute tag à la liste des
tags associés à l'objet, s'il n'est
pas déjà présent.
Il est possible qu'aucun objet ne satisfasse les contraintes données
par spécification_de_recherche et les args. Dans ce cas, la commande
n'a aucun effet.
Le résultat retourné par cette commande est une chaîne vide.
Spécification_de_recherche et les arg's peuvent prendre les formes suivantes :
- above tagOùId
-
Sélectionne l'objet juste après (au-dessus) celui donné par tagOùId
dans la liste d'affichage.
- all
-
Sélectionne tous les objets dans le canvas.
- below tagOùId
-
Sélectionne les objets juste avant (dessous) celui qui est donné par tagOùId
dans la liste d'affichage.
Si tagOùId correspond à plus d'un objet, alors le premier (le plus bas)
des objets de la liste d'affichage, est utilisé.
- closest x y ?halo? ?start?
-
Sélectionne les objets les plus proches du point donné par x et y.
Si plus d'un objet est à la distance la plus proche (i. e. deux objets
recouvrent le point), alors l'objet le plus haut dans la liste d'affichage (le dernier
dans la liste d'affichage), est utilisé.
Si halo est spécifié, alors il doit avoir une valeur positive ou nulle.
Tout objet plus proche que halo d'un point, est considéré comme recouvrant ce point.
Si l'argument start est spécifié, il dénomme un objet utilisant
un tag ou un id (si un tag est utilisé, il sélectionne le premier objet
de la liste d'affichage correspondant à ce tag).
Au lieu de sélectionner l'objet le plus proche du sommet de la liste d'affichage, cette forme
sélectionne l'objet le plus proche du sommet et qui est juste en dessous de start dans la liste
d'affichage ; si aucun objet n'existe, alors la sélection se comporte comme si l'argument start
n'était pas spécifié.
- enclosed x1 y1 x2 y2
-
Sélectionne tous les objets complètement contenus à l'intérieur de la région
rectangulaire définie par x1, y1, x2, et y2.
X1 ne doit pas être plus grand que x2, et y1 ne doit pas être plus
grand que y2.
- overlapping x1 y1 x2 y2
-
Sélectionne tous les objets qui sont complètement ou partiellement contenus dans
la zone rectangulaire définie par x1, y1, x2, et y2.
X1 ne doit pas être plus grand que x2, et y2 ne doit pas être plus
grand que y2.
- withtag tagOùId
-
Sélectionne tous les objets donnés par tagOùId.
- nom_du_canvas bbox tagOùId ?tagOùId tagOùId ...?
-
Retourne une liste de 4 éléments donnant une estimation d'une zone
rectangulaire contenant tous les objets dénommés par les arguments tagOùId.
La liste à la forme ``x1 y1 x2 y2'', telle que tous les éléments sont
contenus dans la région bornée à gauche par x1, x2 à droite, y1 au
sommet, et y2 au fond.
Les valeurs retournées surestiment de quelques pixels, la plus petite zone de
recouvrement.
Si aucun objet ne correspond aux arguments tagOùId ou si les
objets peuvent être recouverts par une boite de taille nulle (i.e. ils
ne sont pas affichés), alors une chaîne vide est retournée.
- nom_du_canvas bind tagOùId ?séquence? ?commande?
-
Cette instruction associe la commande commande à tous les objets
donnés par tagOùId telle que dès que la séquence d'événements séquence
apparaît pour un des objets, alors la commande commande est invoquée.
Cette instruction du widget canvas, est similaire à la commande bind
à ceci près qu'elle opère sur les objets du canvas plutot que sur le widget en entier.
Vous pouvez vous référer à la page de manuel de bind pour plus de détails
sur la syntaxe de sequence et les substitutions réalisées sur commande avant qu'elle ne soit
invoquée.
Si tous les arguments sont spécifiés alor le nouveau binding est créé, remplacant
n'importe quel autre binding correspondant à la même séquence et tagOùId
(si le premier caractère de commande est ``+' alors commande
s'ajoute au(x) binding(s) existant(s), au lieu de les remplacer).
Dans ce cas la valeur retournée est une chaîne vide.
Si commande et séquence sont omises alors l'instruction
retourne une liste de toutes les séquences correpondant à des bindings
définis pour tagOùId.
Les seules événements pour lesquels des bindings peuvent être spécifiés,
sont ceux reliés à la souris ou au clavier (tels que Enter, Leave,
ButtonPress, Motion, et KeyPress ou des événements virtuels).
Le gestion des événements dans les canvas se fait sur l'objet courant défini
dans la section IDENTIFIANTS DES OBJETS ET TAGS ci-dessous. Les
événements Enter et Leave se déclenchent pour un objet donné
quand il devient l'objet courant ou quand il cesse de l'être ; noter
que ces événements sont différents des événements Enter et Leave
associés aux fenêtres. Tous les événements associés à la souris sont
redirigés vers l'objet courant, s'il en existe un. Les événements associés au clavier
sont redirigés vers l'objet possédant le focus, s'il en existe un (voir
le commande focus ci-dessous pour plus de détails). Si un événement virtuel
est utilisé dans un binding, ce binding ne peut se déclencher que si
l'événement virtuel est défini par un événement sous-jacent, associé à la souris
ou au clavier.
Plusieurs binding peuvent correspondre à un même événement. Ceci
peut arriver, par exemple, si un binding est associé à l'id d'un objet
et un autre est associé avec le tag de l'objet.
Dans ce cas, tous les bindings correspondant sont invoqués.
Un binding associé au tag all est toujours invoqué en premier,
suivi par les bindings correspondant à chaque tag de l'objet (dans l'ordre),
suivi par le binding associé à l'id de l'objet.
Si plusieurs bindings correspondent à un même tag, alors seul le plus
spécifique est invoqué.
Une commande continue dans un scripte exécuté par un
binding, termine ce scripte. Une commande break
termine ce scripte et saute tous les autres scriptes associés à l'événement. Ces mécanismes sont
similaires à ceux de la commande bind.
Si des bindings ont été créés pour un objet canvas, par le commande bind,
alors ils sont invoqués en plus des bindings créés pour les objets du canvas, par la commande
bind du widget.
Les bindings des objets sont invoqués avant ceux associés à la totalité du canvas.
- nom_du_canvascanvasx écranx ?espacement_de_la_grille?
-
Etant donnée une fenêtre d'abscisse écranx dans le repère du canvas, cette commande retourne
l'abscisse la plus proche correspondant à la grille du canvas. Si espacement_de_la_grille
est spécifié, alors la coordonnée est arrondie au multiple le plus proche de l'unité de la grille.
- nom_du_canvas canvasy écrany ?espacement_de_la_grille?
-
Etant donnée une fenêtre d'ordonnée écrany dans le repère du canvas, cette commande retourne
l'ordonnée la plus proche correspondant à la grille du canvas. Si espacement_de_la_grille
est spécifié, alors la coordonnée est arrondie au multiple le plus proche de l'unité de la grille.
- nom_du_canvas cget option
-
Retourne la valeur courante de l'option option.
- nom_du_canvas configure ?option? ?valeur? ?option valeur ...?
-
Questionne ou modifie la configuration des options du widget.
Si aucune option n'est spécifiée, retourne une liste décrivant tous les options valables pour nom_du_canvas
(voir Tk_ConfigureInfo pour des informations sur le format de la liste).
Si une ou plus des paires option-value sont spécifiées, alors la commande modifie la(les) valeur(s) de(des) option(s)
pour la(les) valeur(s) donnée(s) ; dans ce cas, la commande retourne une chaîne vide.
Option peut avoir n'importe laquelle des valeurs acceptées par la commande canvas.
- nom_du_canvas coords tagOùId ?x0 y0 ...?
-
- nom_du_canvas coords tagOùId ?liste_de_coordonnées?
-
Questionne ou modifie les coordonnées qui définissent un objet.
Si aucune coordonnée n'est spécifiée, cette commande retourne une liste dont les éléments
sont les coordonnées de l'objet désigné par tagOùId.
Si des coordonnées sont spécifiées, cette commande retourne une liste dont
les éléments sont les coordonnées de l'objet désigné par tagOùId.
Si les coordonnées sont spécifiées, alors elles se substituent aux coordonnées
courantes de l'objet désigné.
Si tagOùId désigne plusieurs objets, alors le premier de la liste d'affichage est utilisé.
- nom_du_canvas create type x y ?x y ...? ?option valeur ...?
-
- nom_du_canvas create type liste_de_coordonnées ?option valeur ...?
-
Crée un nouvel objet dans nom_du_canvas de type type.
Le format exact des arguments figurant après type, dépend
de type, mais généralement ils correspondent aux coordonnées de un ou plusieurs points,
suivis par les spécifications de zéro ou plusieurs options des objets.
Voir la sous-section correspondant à chaque type d'objet, pour plus d'informations sur la syntaxe de cette commande.
La commande retourne l'id du nouvel objet.
- nom_du_canvas dchars tagOùId premier ?dernier?
-
Pour chaque objet donné par tagOùId, efface les caractères, ou les coordonnées,
dans le rang défini par premier et dernier, premier et dernier étant inclus.
Si certains objets désignés par tagOùId ne supportent pas l'opération d'indexation, ils ignoreront
la commande dchars.
Les objets text interprètent premier et dernier comme étant les indices d'un caractère,
les objets ligne et polygone interprètent les indices comme étant des coordonnées (sous forme d'un paire x,y).
Le format des indices est décrit dans la section INDICES ci-dessus.
Si dernier est omis, sa valeur par défaut est premier.
Cette commande retourne une chaîne vide.
- nom_du_canvas delete ?tagOùId tagOùId ...?
-
Supprime chacun des objets désigné par tagOùId, et retourne une chaine vide.
- nom_du_canvas dtag tagOùId ?tag_à_supprimer?
-
Pour chacun des objets désigné par tagOùId, supprime les tags définis par tag_à_supprimer de la liste
de ceux associés avec l'objet.
si tag_à_supprimer est omis alors la valeur par défaut est tagOùId.
Cette commande retourne une chaîne vide.
- nom_du_canvas find commande_de_recherche ?arg arg ...?
-
Cette commande retourne une liste constituée de tous les objets vérifiant les contraintes définies par
commande_de_recherche et arg arg ....
Commande_de_recherche et les arg peuvent avoir n'importe laquelle des formes acceptées
par la commande addtag.
Les objets sont retournés dans l'ordre d'empilement, avec l'objet le plus bas de la pile, en premier.
- nom_du_canvas focus ?tagOùId?
-
Donne le focus clavier à l'objet du canvas désigné par tagOùId.
Si tagOùId désigne plusieurs objets, alors le focus est donné
au premier objet de la liste d'affichage qui supporte l'insertion d'un curseur.
Si tagOùId ne se réfère à aucun objet, ou si aucun des objets ne supporte
l'insertion d'un curseur, alors le focus reste inchangé.
Si tagOùId est une chaîne vide, alors le focus est remis à zéro i.e. aucun
objet n'a le focus.
Si tagOùId n'est pas spécifié alors la commande retourne l'id
de l'objet qui a le focus, ou une chaîne vide si aucun objet n'a le focus.
Une fois que le focus est donné à un objet, cet objet affiche
le curseur d'insertion et tous les événements clavier sont dirigés
vers cet objet.
Le focus associé à un objet du canvas et le focus associé aux fenêtres
de l'écran (fixé avec la commande focus) sont complètement indépendants :
un objet donné ne peut pas avoir le focus à moins que (a) le canvas qui lui est associé soit la fenêtre qui
a le focus (b) l'objet est celui du canvas, qui a le focus.
Dans la plupart des cas, il est judicieux d'utiliser la commande focus pour donner le focus à la fenêtre du canvas (si elle ne l'a pas déjà).
- nom_du_canvas gettags tagOùId
-
Retourne une liste dont les éléments sont les tags associés avec l'objet désigné par
tagOùId.
Si tagOùId désigne plus d'un objet, alors les tags sont retournés
dans l'ordre de la liste d'affichage.
Si tagOùId ne désigne aucun objet, ou si l'objet n'est associé
à aucun tag, alors une chaîne vide est retournée.
- nom_du_canvas icursor tagOùId index
-
Fixe la position du curseur d'insertion pour le(s) objet(s) désigné(s) par tagOùId,
juste avant le caractère positionné à l'index index.
Si quelques ou tous les objets désignés par tagOùId ne supportent pas
le curseur d'insertion, alors la commande n'a aucun effet sur eux.
Voir la section INDICES ci-dessus pour une description du format de index.
Note : le curseur d'insertion est seulement affiché dans l'objet qui a le focus du clavier
(voir la commande focus ci-dessous), mais la position du curseur peut être fixée quand
l'objet n'a pas le focus.
Cette commande retourne une chaîne vide.
- nom_du_canvas index tagOùId index
-
Cette commande retourne un nombre décimal donnant l'index numérique correpondant à index
pour le widget associé à tagOùId.
Index donne une description textuelle de la position désirée, la syntaxe
est décrite dans la section INDICES ci-dessus.
Les objets text interprètent index comme étant l'index d'un caractère,
les objets line et polygone l'interprètent comme étant une coordonnée (i.e. un couple x,y).
La valeur retournée est comprise entre 0 et le nombre total de caractères ; s'il s'agit d'une coordonnée,
elle appartient nécessairement à l'objet.
Si tagOùId désigne plusieurs objets, alors les indexes affichés correspondent aux widgets
acceptant l'opération d'indexation (l'ordre de la liste est celui de la liste d'affichage).
- nom_du_canvas insert tagOùId avant_ceci chaîne
-
Pour chacun des objets désignés par tagOùId, si l'objet admet l'insertion de texte ou d'une coordonnée,
alors la chaîne est insérée dans le texte de l'objet juste avant le caractère, ou la coordonnée, d'index
avant_ceci.
Les objets text interprètent avant_ceci comme étant l'index d'un caractère,
les objets line et polygone l'interprète comme étant l'index d'une coordonnée (i.e. un couple x,y).
Pour les objets line et polygone la chaîne doit être une coordonnée valide.
Voir la section INDICES ci-dessus pour plus d'informations sur les formes possibles de avant_ceci.
Cette commande retourne une chaîne vide.
- nom_du_canvas itemcget tagOùId option
-
Retourne la valeur courante de l'option de configuration de l'objet désigné par tagOùId.
Cette commande est similaire à la commande cget, excepté qu'elle s'applique à un objet
particulier plutot qu'au widget dans sa totalité.
Option peut avoir n'importe laquelle des valeurs acceptées par la commande create du widget.
Si tagOùId est un tag désignant plus d'un objet, le premier (le plus bas dans la liste d'affichage) est utilisé.
- nom_du_canvas itemconfigure tagOùId ?option? ?valeur? ?option valeur ...?
-
Cette commande est similaire à la commande configure, à ceci près qu'elle modifie une option spécifique pour tous
les objets désignés par tagOùId au lieu de modifier les options pour la totalité du widget canvas.
Si aucune option n'est spécifiée, la commande retourne une liste décrivant tous les options valables pour
le premier objet donné par tagOùId (voir Tk_ConfigureInfo pour plus
d'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 identique à la sous-liste correspondant à l'option retournée par la commande si aucune option n'est spécifiée). Si au moins une paire option-value est spécifiée, alors
la commande modifie l'(les) option(s) pour la(les) valeur(s) donnée(s), pour chacun des objets désignés par tagOùId ;
dans ce cas la commande retourne une chaîne vide.
Les option et valeur sont les mêmes que celles autorisées par
la commande create ; voir les sections décrivant les objets correspondants pour plus
de détails sur les options possibles.
- nom_du_canvas lower tagOùId ?avant_ceci?
-
Déplace tous les objets désignés par tagOùId à une nouvelle position dans la liste d'affichage,
juste avant celle de l'objet désigné par avant_ceci.
Si tagOùId désigne plus d'un objet, ils sont tous déplacés en conservant leur ordre relatif.
Avant_ceci est un tag ou un id ; s'il désigne plus d'un objet, alors le premier (le plus bas dans la liste d'affichage)
est utilisé.
Note : cette commande n'a pas d'effet sur les objets de type fenêtre. Les
objets de type fenêtre cachent toujours les objets des autres types, et l'ordre
d'empilement des objets de type fenêtre est déterminé par les commandes raise et lower, et non par les commandes raise et lower du widget canvas.
Cette commande retourne une chaîne vide.
- nom_du_canvas move tagOùId xAjouté yAjouté
-
Déplace chacun des objets désigné par tagOùId dans l'espace des coordonnées du canvas,
en ajoutant xAjouté et yAjouté, respectivement à l'abscisse et à l'ordonnée de chacun des points associés à l'objet.
Cette commande retourne une chaîne vide.
- nom_du_canvas postscript ?option valeur option valeur ...?
-
Génère une représentation Postscript pour une partie ou la totalité du canvas.
Si l'option -file est spécifiée, alors le Postcript est écrit dans un ficher et une chaîne vide est retournée par la commande. Si l'interpréteur auquel appartient le canvas, est marqué comme safe, l'opération
échouera car un interpréteur safe n'est pas autorisé à écrire un fichier.
Si l'option -channel est spécifiée, l'argument indique le nom du canal déjà ouvert
pour l'écriture. Le Postscript est écrit sur ce channel, et -à la fin de l'opération- le channel est laissé ouvert pour d'autres
opérations d'écriture.
Le Postscript généré est du Postscript encapsulé utilisant la version 3.0 de la Convention des Documents Structurés (Document Structuring Conventions).
Note : Par défaut, le Postscript ne contient que les informations qui apparaissent
dans la fenêtre du canvas. Si le canvas vient juste d'être créé, il a une taille
initiale de 1x1 pixel, ainsi rien n'apparaitra dans le Postscript. Pour contourner
ce problème, il est possible d'invoquer la commande update pour attendre que
la fenêre du canvas atteigne sa taille finale. Il est aussi possible d'utiliser les options
-width et -height pour spécifier la surface du canvas à imprimer.
Les paires option-valeur fournissent des informations supplémentaires pour contrôler
la génération du Postscript. Les opérations suivantes sont supportées :
- -colormap nom_de_variable
-
Nom_de_variable doit être le nom d'un tableau qui contient la palette de couleur
à utiliser pour le Postscript.
Chaque élément de nom_de_variable consiste en un code Postscript qui détermine
une couleur particulière (i.e. ``1.0 1.0 0.0 strgbcolor'').
Lors de la génération du Postscript, Quand des informations sur les couleurs sont
nécessaires, Tk contrôle s'il existe un élément de nom_de_variable de même nom
que la couleur.
Si cette option n'a pas été spécifiée, ou s'il n'existe pas d'entrée dans nom_de_variable
pour une couleur donnée, alors Tk utilise les intensités de rouge, vert, et bleu des couleurs
de X-Windows.
- -colormode mode
-
Spécifie comment sortir les informations sur la couleur. Mode peut prendre
les valeurs color (pour une sortie couleur), gray (convertit toutes les couleurs
dans leur équivalent sur une échelle des gris) ou mono (convertit toutes les couleurs en noir et blanc).
- -file nom_de_fichier
-
Spécifie le nom du fichier dans lequel écrire le Postscript. Si cette option
n'est pas spécifiée alors le Postscript est retourné comme résultat de la commande au lieu
d'être envoyé dans un fichier.
- -fontmap nom_de_variable
-
Nom_de_variable doit être le nom d'un tableau qui spécifie la carte des fontes
à utiliser pour le Postscript.
Chaque élément de nom_de_variable consiste en une liste Tcl composée de deux éléments,
qui correspondent au nom et à la taille de point de la fonte Postscript.
Lors de la génération du Postscript, si une commande concernant une fonte particulière est rencontrée,
Tk contrôle si nom_de_variable contient un élément de même nom que la fonte.
Si un tel élément existe, alors les informations sur la fonte, contenues dans le tableau, sont utilisées.
Autrement Tk tente de deviner la fonte Postscript à utiliser.
Généralement Tk n'identifie que des fontes bien connues telles que
Times, Helvetica et Courier, et seulement si les noms des fontes X n'omettent aucun
trait d'union entre les tailles de points.
Par exemple, -*-Courier-Bold-R-Normal--*-120-* fonctionnera tandis
que *Courier-Bold-R-Normal*120* ne fonctionnera pas ; Tk a besoin des traits
d'union pour pouvoir parser le nom de la fonte.
- -height taille
-
Spécifie la hauteur de la surface du canvas à imprimer.
La valeur par défaut est la hauteur de la fenêtre du canvas.
- -pageanchor ancre
-
Spécifie quel point de la zone du canvas à imprimer doit apparaître sur le point
de positionnement de la page (celui-ci est défini par les options -pagex et
-pagey).
Par exemple, -pageanchor n signifit que le centre de la partie supérieure de la zone du canvas
devant être imprimée, doit être sur le point de positionnement. La valeur par défaut est center.
- -pageheight taille
-
Indique que le Postscript doit être dilaté à la fois en x et en y tel
que la zone imprimée est la hauteur taille sur la page Postscript.
Taille est une valeur décimale suivie de c pour des centimètres,
i pour des pouces, m pour des millimètres, p ou rien du tout
pour des points d'impression (1/72 de pouce).
La hauteur par défaut est celle de la zone telle qu'elle apparait à l'écran.
Si les options -pageheight et -pagewidth sont toutes deux spécifiées,
alors le facteur d'échelle indiqué par -pagewidth est utilisé (la dilation selon des valeurs
différentes pour les deux axes, n'est pas implémentée).
- -pagewidth taille
-
Indique que le Postscript doit être dilaté à la fois en x et en y tel
que la zone imprimée est la largeur taille sur la page Postscript.
La largeur par défaut est celle de la zone telle qu'elle apparait à l'écran.
Taille a la même forme que pour l'option -pageheight.
Si les options -pageheight et -pagewidth sont toutes deux spécifiées,
alors le facteur d'échelle indiqué par -pagewidth est utilisé (la dilation selon des valeurs
différentes pour les deux axes, n'est pas implémentée).
- -pagex position
-
Position donne l'abscisse du point de positionnement de la page
Postscript. Cette valeur peut prendre n'importe laquelle des formes autorisées par
l'option -pageheight. A utiliser en conjonction avec les options -pagey et -pageanchor
pour déterminer où la zone à imprimer apparait sur la page Postscript. La valeur par défaut correspond au
centre de la page.
- -pagey position
-
Position donne l'ordonnée du point de positionnement de la page
Postscript. Cette valeur peut prendre n'importe laquelle des formes autorisées par
l'option -pageheight. A utiliser en conjonction avec les options -pagex et -pageanchor
pour déterminer où la zone à imprimer apparait sur la page Postscript. La valeur par défaut correspond au
centre de la page.
- -rotate booléen
-
Booléen spécifie si la zone à imprimer doit être tournée de 90 degrés.
Si la zone n'est pas tournée, l'axe des x correspond au coté le plus court de la page (orientation ``portrait'') ;
si la zone est tournée, l'axe des x correspond au côté le plus long de la page (orientation ``paysage'').
La valeur par défaut est non-tourné.
- -width taille
-
Spécifie la largeur de la zone à imprimer. La valeur par défaut
est la largeur de la fenêtre du canvas.
- -x position
-
Spécifie la coordonnée en x de l'arrête gauche de la zone du canvas
à imprimer, dans le système de coordonnées du canvas, et non dans celui de la fenêtre.
La valeur par défaut est la coordonnée de l'arrête gauche de la fenêtre.
- -y position
-
Spécifie la coordonnée en y de l'arrête haute de la zone du canvas
à imprimer, dans le système de coordonnées du canvas, et non dans celui de la fenêtre.
La valeur par défaut est la coordonnée de l'arrête haute de la fenêtre.
- nom_du_canvas raise tagOùId ?au_dessus_de_ceci?
-
Déplace tous les objets désignés par tagOùId vers une nouvelle position dans la liste d'affichage,
juste après l'objet définit par au_dessus_de_ceci.
Si tagOùId désigne plusieurs objets, alors ils sont déplacés
tels que leur ordre relatif soit conservé.
Au_dessus_de_ceci est un tag ou un id ; s'il désigne plusieurs objets,
c'est le dernier de la liste d'affichage qui est utilisé pour déterminer
la nouvelle position des objets déplacés.
Note : cette commande n'a aucun effet sur les objets de type fenêtre. Les
objets de type fenêtre cachent toujours les objets des autres types, et l'ordre
d'empilement des objets de type fenêtre est déterminé par les commandes raise et lower, et non par les commandes raise et lower du widget canvas.
Cette commande retourne une chaîne vide.
- nom_du_canvas scale tagOùId xOrigine yOrigine xCoefficient yCoefficient
-
Dilate tous les objets désignés par tagOùId dans le système de coordonnées du canvas.
XOrigines et yOrigine définissent l'origine pour l'opération de dilatation,
xCoefficient et yCoefficient définissent les coefficients de dilatation, respectivement
le long de l'abscisse et de l'ordonnée (un facteur de dilatation égale à 1.0 implique qu'il n'y pas
de dilatation le long d'un axe).
Pour chacun des points de chaque objet, la coordonnée en x est modifiée telle
que la distance de xOrigine soit multipliée par le facteur xCoefficient.
De même, pour chacun des points de chaque objet, la coordonnée en y est modifiée telle
que la distance de yOrigine soit multipliée par le facteur yCoefficient.
Cette commande retourne une chaîne vide.
- nom_du_canvas scan option args
-
Cette commande est utilisée pour implémenter le balayage de tout un canvas. Elle a deux formes,
selon la valeur de l'option :
- nom_du_canvas scan mark x y
-
Enregistre x et y ainsi que la vue courante du canvas ; cette
commande est utilisée en conjonction avec la commande scan dragto (voir ci-dessous).
Typiquement, cette commande est associée avec l'action de presser un bouton de la souris, dans
le widget ; x et y sont alors les coordonnées du pointeur de la souris.
Cette commande retourne une chaîne vide.
- nom_du_canvas scan dragto x y ?gain?.
-
Cette commande calcule la différence entre les valeurs des arguments x et y
(lesquels sont typiquements les coordonnées du pointeur de la souris), et les valeurs de x
et y fixées par la dernière commande scan mark (voir ci-dessus).
La vue est alors ajustée de gain fois la différence entre les coordonnées. La valeur
par défaut de gain est 10.
Cette commande est typiquement associée à l'événement ``déplacer la souris'', pour produire
l'effet de tirer le canvas à travers la fenêtre. La commande retourne une chaîne vide.
- nom_du_canvas select option ?tagOùId arg?
-
Agit sur la sélection de une ou plusieurs façons, selon la valeur de l'option.
La commande peut prendre n'importe laquelle des formes décrites ci-dessous.
Dans toutes les descriptions ci-dessous, tagOùId doit désigner un objet
qui supporte les opérations d'indexation et de sélection ; si le tag désigne plusieurs
objets, alors le premier qui supporte ces opérations, est utilisé.
Index est une description textuelle de la position dans tagOùId, comme décrit
dans la section INDICES ci-dessus.
- pathName select adjust tagOùId index
-
Dans le widget désigné par tagOùId, localise la fin de la sélection la plus proche
du caractère donnée par index, et ajuste la sélection telle qu'elle se finisse à l'index
index (i.e. incluant mais n'allant pas au-delà de index).
L'autre fin de sélection est utilisée comme point d'ancrage pour une future commande select to.
La commande retourne une chaîne vide.
- nom_du_canvas select clear
-
Vide la sélection si elle est dans ce widget.
Si la sélection n'est pas dans ce widget, alors la commande n'a aucun effet.
Cette commande retourne une chaîne vide.
- nom_du_canvas select from tagOùId index
-
Fixe le point d'ancrage de la sélection pour le widget, tel qu'il soit juste avant le caractère
localisé à la position index, pour l'objet désigné par tagOùId.
Cette commande ne modifie pas la sélection ; elle fixe juste la fin de la sélection pour une future commande
select to.
Cette commande retourne une chaîne vide.
- nom_du_canvas select item
-
Retourne l'id de l'objet sélectionné, si la sélection est dans l'objet du canvas.
Si la sélection n'est pas dans le canvas, alors une chaîne vide est retournée.
- nom_du_canvas select to tagOùId index
-
Fixe la sélection telle qu'elle corresponde aux caractères de tagOùId compris entre
le point d'ancrage et index.
La nouvelle sélection inclut le caractère donné par index ;
elle inclut le caractère donné par le point d'ancrage, seulement si
index est plus grand ou égal à l'index du point d'ancrage.
Le point d'ancrage est déterminé par la commande select adjust ou
select from la plus récente.
Si le point d'ancrage de la sélection n'est pas dans tagOùId, alors
il est défini comme étant celui donné par index.
Cette commande retourne une chaîne vide.
- nom_du_canvas type tagOùId
-
Retourne le type de l'objet donné par tagOùId, par exemple rectangle ou text.
Si tagOùId désigne plus d'un objet, alors le type du premier objet de la liste d'affichage
est retourné.
Si tagOùId ne désigne aucun objet, alors une chaîne vide est retournée.
- nom_du_canvas xview ?args?
-
Cette commande est utilisée pour questionner ou modifier la position horizontale des informations
affichées dans la fenêtre du canvas.
Elle peut prendre les formes suivantes :
- nom_du_canvas xview
-
Retourne une liste de deux éléments.
Chaque élément est un nombre réel compris entre 0 et 1 ; chacun d'eux décrit le pan horizontal visible
dans la fenêtre.
Par exemple, si le premier élément est 0.2 et le second 0.6, 20% de la surface du canvas (comme défini par
l'option -scrollregion) est hors de l'écran par la gauche, et 40% du centre est visible.
Ce sont les mêmes valeurs que celles passées via l'option -xscrollcommande.
- nom_du_canvas xview moveto fraction
-
Ajuste la vue dans la fenêtre telle que la fraction de la largeur totale du canvas, soit hors de l'écran
à gauche.
Fraction doit être compris entre 0 et 1.
- nom_du_canvas xview scroll nombre quoi
-
Cette commande déplace la vue de la fenêtre vers la gauche ou la droite selon les valeurs
de nombre et quoi.
Nombre doit être un entier.
Quoi peut être soit units ou pages ou une abréviation de ces deux valeurs.
Si quoi a la valeur units, la vue est ajustée vers la gauche ou la droite en unités
de l'option xScrollIncrement, si la valeur est plus grande que zéro, sinon en unités d'un dixième
de la largeur de la fenêtre.
Si quoi a la valeur pages alors la vue est ajustée en unités de neuf dixièmes de la hauteur de la fenêtre.
Si nombre est négatif alors les informations plus loin que la gauche deviennent visibles ; si nombre est positif
les information plus loin que la droite deviennent visibles.
- nom_du_canvas yview ?args?
-
Cette commande est utilisée pour questionner ou modifier la position verticale de
l'information affichée dans la fenêtre du canvas.
Elle peut prendre les formes suivantes :
- nom_du_canvas xview
-
Retourne une liste de deux éléments.
Chaque élément est un nombre réel compris entre 0 et 1 ; chacun d'eux décrit le pan vertical visible
dans la fenêtre.
Par exemple, si le premier élément est 0.6 et le second 1, 40% de la surface inférieure du canvas (comme défini par
l'option -scrollregion) est visible.
Ce sont les mêmes valeurs que celles passées via l'option -yscrollcommande.
- nom_du_canvas yview moveto fraction
-
Ajuste la vue dans la fenêtre telle que la fraction de la largeur totale du canvas, soit hors de l'écran
vers le haut.
Fraction doit être compris entre 0 et 1.
- nom_du_canvas yview scroll nombre quoi
-
Cette commande déplace la vue de la fenêtre vers le haut ou le bas selon les valeurs
de nombre et quoi.
Nombre doit être un entier.
Quoi peut être soit units ou pages ou une abréviation de ces deux valeurs.
Si quoi a la valeur units, la vue est ajustée vers le haut ou le bas en unités
de l'option yScrollIncrement, si la valeur est plus grande que zéro, sinon en unités d'un dixième
de la hauteur de la fenêtre.
Si quoi a la valeur pages alors la vue est ajustée en unités de neuf dixièmes de la hauteur de la fenêtre.
Si nombre est négatif alors les informations plus loin que le haut deviennent visibles ; si nombre est positif
les information plus loin que le bas deviennent visibles.
Les sections ci-dessous décrivent les différents types d'objets supportés
par le widget canvas. Chaque type d'objet est caractérisé par deux choses :
premièrement, la forme de la commande create utilisée pour créer une instance
de ce type ; et deuxièmement, l'ensemble des options de configuration pour les objets de ce type,
lesquelles doivent être utilisées avec les commandes create ou itemconfigure du widget.
La plupart des objets ne supportent pas les opérations d'indexation ou de sélection, ainsi que les commandes
qui leur sont reliées telles que index et insert.
Les objets qui supportent ces opérations sont les objets de type text, line ou polygon.
Pour les objets de type line et polygon, les opérations d'indexation sont utilisées pour
manipuler les coordonnées de l'objet.
Certains objets partagent un ensemble commun d'options. Ces options sont
décrites ici, elles sont valides pour tous les types d'objets.
- -dash pattern
-
- -activedash pattern
-
- -disableddash pattern
-
Cette option spécifie les motifs en pointillés pour les différents états d'un objet : normal, actif et désactivé.
Pattern peut avoir n'importe laquelle des formes acceptées par Tk_GetDash. Si l'option -dash n'est pas précisée, alors le motif par défaut est une ligne solide.
Voir "MOTIFS EN POINTILLES" pour plus d'informations.
- -dashoffset offset
-
L'offset en pixels, au début du motif défini par l'option -dash.
-dashoffset est ignoré si l'option -dash n'est pas utilisée.
L'offset peut avoir n'importe laquelle des formes décrites dans la section
COORDONNEES ci-dessus.
- -fill couleur
-
- -activefill couleur
-
- -disabledfill couleur
-
Spécifie la couleur utilisée pour remplir la surface de l'objet pour ses différents états possibles :
normal, actif, et désactivé.
Couleur peut avoir n'importe laquelle des formes acceptées par Tk_GetColor.
Si couleur est une chaîne vide (valeur par défaut), alors l'objet n'est pas rempli.
Pour les objets de type line, cette option spécifie la couleur de la ligne.
Pour les objets de type text, cette option spécifie la couleur du texte.
- -outline couleur
-
- -activeoutline couleur
-
- -disabledoutline couleur
-
Cette option spécifie la couleur qui doit être utilisée pour dessiner le contour
d'un objet pour ses différents états possibles : normal, actif, et désactivé.
Couleur peut avoir n'importe laquelle des formes acceptées par Tk_GetColor.
La valeur par défaut de l'option est black (noir). Si couleur est une chaîne vide,
alors le contour n'est pas dessiné.
- -offset offset
-
Spécifie l'offset du motif en pointillés. La valeur de l'offset peut être donnée
sous la forme x,y ou en précisant une face, telle que n, ne,
e, se, s, sw, w ou center (centre).
Dans le premier cas, l'origine est celle du toplevel de la fenêtre courante.
Pour le canvas et les objets du canvas, l'origine est celle du canvas, mais ajouter un
# devant la paire de coordonnées, indique qu'il faut utiliser l'origine du toplevel.
Pour les objets canvas, l'option -offset est aussi utilisée pour les motifs en pointillés.
Pour les objets de type line (ligne) et polygon (polygone), il est possible de spécifier un index comme argument, qui
connecte l'origine du motif en pointillés à un des points de la ligne ou du polygone.
- -outlinestipple bitmap
-
- -activeoutlinestipple bitmap
-
- -disabledoutlinestipple bitmap
-
Cette option spécifie le motif en pointillés qui doit être utilisé pour dessiner
le contour d'un objet pour les différents états possibles : normal, actif, et désactivé.
Indique que le contour de l'objet doit être dessiné avec un motif en pointillés ; bitmap
spécifie le motif à utiliser, n'importe laquelle des formes acceptées par Tk_GetBitmap peut être utilisée.
Si l'option -outline n'a pas été spécifiée, alors cette option n'a aucun effet.
Si bitmap est une chaîne vide (la valeur par défaut), alors le contour est une ligne solide.
- -stipple bitmap
-
- -activestipple bitmap
-
- -disabledstipple bitmap
-
Cette option spécifie le motif en pointillés qui doit être utilisé pour remplir l'objet
dans ses différents états possibles : normal, actif et désactivé.
Bitmap spécifie le motif à utiliser, n'importe laquelle des formes acceptées par Tk_GetBitmap peut être utilisée.
Si l'option -fill n'a pas été spécifiée, alors cette option n'a aucun effet.
Si bitmap est une chaîne vide (la valeur par défaut), alors le remplissage est uniforme, sans motif.
Pour les objets de type text, cette option modifit l'affichage du texte.
- -state state
-
Cette option permet à un objet d'être dans un état différent de l'état global du canvas, défini par
l'option state. Les valeurs possibles sont : normal, disabled (désactivé), hidden (caché).
- -tags liste_de_tags
-
Spécifie un ensemble de tags à appliquer sur un objet.
Liste_de_tags est une liste de tags, qui remplace les tags courants de l'objet.
Liste_de_tags peut être une liste vide.
- -width largeur_du_contour
-
- -activewidth largeur_du_contour
-
- -disabledwidth largeur_du_contour
-
Spécifie la largeur du contour de l'objet pour ses différents états possibles :
normal, actif, et désactivé.
Largeur_du_contour peut prendre n'importe laquelle des formes décrites
dans la section COORDONNEES ci-dessus.
Si l'option -outline est une chaîne vide, alors l'option n'a aucun effet. La valeur par défaut est 1.0.
Pour les objets de type arc, le contour est dessiné, centré sur les arrêtes de la région définie par l'arc.
Un arc est la section d'un ovale délimitée par deux angles (spécifiés
par les options -start et extent) et affichée dans une des différentes
façons définie par l'option -style.
Les arcs sont créés grace aux commandes suivantes :
nom_du_canvas create arc x1 y1 x2 y2 ?option valeur option valeur ...?
nom_du_canvas create arc liste_de_coordonnées ?option valeur option valeur ...?
Les arguments x1, y1, x2 et y2 ou liste_de_coordonnées donnent
les coordonnées des deux coins diagonalement opposés de la région rectangulaire enfermant l'oval
définissant l'arc.
Après les coordonnées, il peut suivre un certain nombre de paires option-value, chacune
d'elles correspondant aux options de configuration de l'objet. Les mêmes paires option-valeur
peuvent être utilisées avec la commande itemconfigure du widget, pour changer sa configuration.
Les options standards suivantes sont supportées par les objets de type arc :
-dash
-activedash
-disableddash
-dashoffset
-fill
-activefill
-disabledfill
-offset
-outline
-activeoutline
-disabledoutline
-outlinestipple
-activeoutlinestipple
-disabledoutlinestipple
-stipple
-activestipple
-disabledstipple
-state
-tags
-width
-activewidth
-disabledwidth
Plus les options particulières aux arcs :
- -extent degrés
-
Spécifie l'extension de l'angle d'ouverture de l'arc.
Cette extension est indiquée en degrés comptés dans le sens horaire, à partir de l'angle de départ
donné par l'option -start. La valeur degrés peut être négative.
Si la valeur est plus grande que 360 ou inférieure à -360, la valeur module 360 est alors utilisée.
- -start degrés
-
Spécifie l'angle de départ de l'arc.
Degrés est donné en degrés mesurés dans le sens horaire à partir de la position 3 heures. Cette valeur
peut être positive ou négative.
- -style type
-
Indique comment l'arc doit être dessiné. Si type est pieslice (la valeur par défaut)
alors la région associée à l'arc est délimitée par le périmètre de l'ovale plus deux segments droits,
chacun d'eux reliant le centre aux deux extrémités de l'arc.
Si type est chord alors la région associée à l'arc est une section
du périmètre de l'ovale plus un segment connectant les deux extrémités de l'arc.
Si type est arc alors la région associée à l'arc se réduit au périmètre de l'ovale.
Dans ce dernier cas, l'option -fill est ignorée.
Les objets de type bitmap apparaissent à l'affichage comme des images composées de deux couleurs, plan avant et arrière plan.
Les bitmaps sont créés par les commandes suivantes :
pathName create bitmap x y ?option valeur option valeur ...?
pathName create bitmap liste_des_coordonnées ?option valeur option valeur ...?
Les arguments x et y ou liste_de_coordonnées spécifient les coordonnées d'un point
utilisé pour positionner le bitmap (voir l'option -anchor ci-dessous pour plus d'informations sur
la façon dont sont affichés les bitmaps).
Après les coordonnées, peuvent suivre différentes paires option-valeur, chacune d'elle
appartient à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur
peuvent être utilisées avec la commande itemconfigure du widget pour modifier la configuration de l'objet.
Les options standards suivantes sont supportées par les objets de type bitmap :
-state
-tags
Les options supplémentaires suivantes sont supportées par les objets de type bitmap :
- -anchor position_de_l'ancre
-
position_de_l'ancre indique comment positionner le bitmap relativement aux points
de positionnement de l'objet ; il peut avoir n'importe laquelle des formes acceptées par Tk_GetAnchor. Par exemple, si position_de_l'ancre est center alors le bitmap
est centré sur le point ; si position_de_l'ancre est n alors le bitmap sera dessiné tel que le centre
de son sommet soit sur ce point.
La valeur par défaut de l'option est center.
- -background couleur
-
- -activebackground bitmap
-
- -disabledbackground bitmap
-
Spécifie la couleur utilisée pour chaque pixel du bitmap, de valeur '0', pour les différents états possibles :
normal, actif, et désactivé.
Couleur peut avoir n'importe laquelle des formes acceptées par Tk_GetColor.
Si cette option n'est pas spécifiée, ou si elle est spécifiée par une chaîne vide, alors les pixels de valeur
'0' ne sont pas affichés ; ce qui produit un effet de transparence.
- -bitmap bitmap
-
- -activebitmap bitmap
-
- -disabledbitmap bitmap
-
Spécifie les bitmaps à afficher dans l'objets pour ses différents états possibles : normal, actif et désactivé.
Bitmap peut avoir n'importe laquelle des formes acceptées par Tk_GetBitmap.
- -foreground couleur
-
- -activeforeground bitmap
-
- -disabledforeground bitmap
-
Spécifie la couleur à utiliser pour chaque pixel du bitmap, de valeur '1', pour les différents états possibles :
normal, actif, désactivé.
Couleur peut avoir n'importe laquelle des formes acceptées par Tk_GetColor et la valeur par défaut est black (noir).
Les objets de type image sont utilisés pour afficher des images sur le canvas.
Les images sont créées par les commandes suivantes :
nom_du_canvas create image x y ?option valeur option valeur ...?
nom_du_canvas create image liste_de_coordonnées ?option valeur option valeur ...?
Les arguments x et y ou liste_de_coordonnées spécifient les coordonnées d'un point
utilisé pour positionner l'image (voir l'option -anchor ci-dessous pour plus d'informations).
Après les coordonnées, n'importe quel nombre de paires option-valeur peuvent suivre, chacune
d'elle appartenant à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur
peuvent être utilisées avec la commande itemconfigure du widget, pour modifier sa configuration.
Les options standards suivantes sont supportées par les objets de type image :
-state
-tags
Les options supplémentaires suivantes sont supportées par les objets de type image :
- -anchor position_de_l'ancre
-
Position_de_l'ancre indique comment positionner l'image relativement au point
de positionnement de l'objet ; il peut prendre n'importe laquelle des formes acceptées par
Tk_GetAnchor. Par exemple, si position_de_l'ancre
est center alors l'image est centrée sur le point ; si position_de_l'ancre est n alors
l'image est dessinée telle que le centre du sommet soit sur ce point.
La valeur par défaut de l'option est center.
- -image nom
-
- -activeimage nom
-
- -disabledimage nom
-
Spécifie le nom des images à afficher dans l'objet, pour ses différents états possibles :
normal, actif, et désactivé.
Cette image doit avoir été créée précedemment par la commande image create.
Les objets de type line (ligne) correspondent à un ou plusieurs segments ou courbes connectés entre eux.
Les objets de type line supportent les opérations d'indexation sur les coordonnées, appelées par les commandes :
dchars, index, insert.
Les lignes sont créées par les commandes suivantes :
nom_du_canvas create line x1 y1... xn yn ?option valeur option valeur ...?
nom_du_canvas create line liste_de_coordonnees ?option valeur option valeur ...?
Les arguments x1...yn ou liste_de_coordonnees donnent les coordonnées de la série de points
qui décrivent les segments de la ligne.
Après les coordonnées, il peut y avoir un nombre quelconque de paires option-valeur, appartenant à
l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur peuvent être
utilisées avec la commande itemconfigure du widget, pour changer la configuration de l'objet.
Les options standard suivantes sont supportées par les objets de type ligne :
-dash
-activedash
-disableddash
-dashoffset
-fill
-activefill
-disabledfill
-stipple
-activestipple
-disabledstipple
-state
-tags
-width
-activewidth
-disabledwidth
Les options supplémentaires suivantes sont supportées par les objets de type ligne :
- -arrow où
-
Indique si une flèche doit ou non être dessinée à une ou aux deux extrêmités de la ligne.
Où doit avoir une des valeurs suivantes :
none (pas de flèche),
first (pour une flèche sur le premier point de la ligne),
last (pour une flèche sur le dernier point de la ligne),
both (pour une flèche aux deux extrêmités).
La valeur par défaut de l'option est none.
- -arrowshape forme
-
Cette option indique comment les têtes de flèche doivent être dessinées.
L'argument forme doit être une liste de trois éléments, chacun spécifiant
une distance, dans n'importe laquelle des formes décrites dans la section COORDONNEES ci-dessus.
Le premier élément de la liste donne la distance le long de la ligne reliant la base à la pointe de la flèche.
Le second élément donne la distance le long de la ligne reliant la pointe de la flèche à l'une de ces deux autres
extrêmités, et le troisième est la distance le long de la ligne reliant ces deux dernières extrêmités.
Si cette option n'est pas spécifiée alors Tk utilise une forme ``raisonnable''.
- -capstyle style
-
Spécifie la façon dont les extrêmités de la ligne doivent être dessinées.
Style peut avoir n'importe laquelle des formes acceptées par Tk_GetCapStyle (butt, projecting, ou round).
Cette option est ignorée par les extrêmités possédant une flèche.
- -joinstyle style
-
Spécifie comment dessiner les jointures entre les segments de la ligne.
Style peut avoir n'importe laquelle des formes acceptées par Tk_GetCapStyle (bevel, miter, round).
Si cette option n'est pas spécifiée, la valeur par défaut est miter.
Si la ligne ne contient que deux points, cette option est ignorée.
- -smooth booléen
-
Booléen doit avoir une des valeurs acceptées par Tk_GetBoolean.
Indique si la ligne doit être tracée comme une courbe.
Si c'est le cas, les points sont reliées par des splines paraboliques : un spline
est dessiné entre le premier et le second point, un autre entre le second et le troisième point,
et ainsi de suite. Des segments droits peuvent être tracés à l'intérieur de la courbe en dupliquant
les extrêmités du segment voulu.
- -splinesteps nombre
-
Spécifie le degré de lissage désiré pour les courbes : chaque spline
est approximé par nombre segments. Cette option est ignorée à moins que
l'option -smooth est la valeur true (vrai).
Les objets de type oval sont des régions de forme circulaire ou ovale. Chaque ovale a un
contour ou/et un remplissage. Les ovales sont créés par les commandes suivantes :
nom_du_canvas create oval x1 y1 x2 y2 ?option valeur option valeur ...?
nom_du_canvas create oval liste_de_coordonnées ?option valeur option valeur ...?
Les arguments x1, y1, x2, et y2 ou liste_de_coordonnées donnent
les coordonnées de deux coins diagonalement opposés de la région rectangulaire enfermant l'ovale.
L'ovale inclut les bords supérieur et gauche du rectangle mais pas les bords inférieur et droit.
Si la région est carrée alors l'ovale résultant est un cercle ; autrement, il a une forme allongée.
Après les coordonnées, il peut y avoir un nombre quelconque de paires option-valeur,
chacune appartient à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur
peuvent être utilisées avec la commande itemconfigure du widget, afin de changer sa configuration.
Les options standards suivantes sont supportées par les objets de type ovale :
-dash
-activedash
-disableddash
-dashoffset
-fill
-activefill
-disabledfill
-offset
-outline
-activeoutline
-disabledoutline
-outlinestipple
-activeoutlinestipple
-disabledoutlinestipple
-stipple
-activestipple
-disabledstipple
-state
-tags
-width
-activewidth
-disabledwidth
Les objets de type polygone supportent les opérations d'indexation utilisant
les commandes du widget canvas : dchars, index, insert.
Les polygones sont créés par les commandes suivantes :
nom_du_canvas create polygon x1 y1 ... xn yn ?option valeur option valeur ...?
nom_du_canvas create polygon liste_de_coordonnées ?option valeur option valeur ...?
Les arguments x1...yn ou liste_de_coordonnées spécifient les coordonnées d'au moins 3 points définissant le polygone.
Le premier point n'a pas à être répété à la fin de la séquence, pour fermer le polygone ; Tk relie automatiquement
le dernier point et le premier.
Après les coordonnées, il peut y avoir un nombre quelconque de paire option-valeur, chacune d'elle appartenant à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur peuvent être
utilisées avec la commande itemconfigure du widget, pour modifier sa configuration.
Les options standard suivantes sont supportées par les objets de type polygone :
-dash
-activedash
-disableddash
-dashoffset
-fill
-activefill
-disabledfill
-offset
-outline
-activeoutline
-disabledoutline
-outlinestipple
-activeoutlinestipple
-disabledoutlinestipple
-stipple
-activestipple
-disabledstipple
-state
-tags
-width
-activewidth
-disabledwidth
Les options supplémentaires suivantes sont supportées par les objets de type polygone :
- -joinstyle style
-
Spécifie comment les jointures entre les segments, doivent être dessinées.
Style peut avoir n'importe laquelle des formes acceptées par Tk_GetCapStyle
(bevel, miter, ou round).
Si l'option n'est pas spécifiée, la valeur par défaut est miter.
- -smooth booléen
-
Booléen doit avoir une des formes acceptées par Tk_GetBoolean.
Elle indique si le polygone doit être dessiné avec un périmètre courbe.
Dans ce cas, la bordure est un ensemble de spline paraboliques, un spline
relie le premier et le second point, un autre relie le deuxième et le troisième point,
et ainsi de suite. Des segments droits peuvent être ajoutés au périmètre, en dupliquant
les extrêmités de segment désiré.
- -splinesteps nombre
-
Spécifie le degré de lissage désiré pour les courbes : chaque spline
est approximé par nombre segments. Cette option est ignorée à moins que
l'option -smooth est la valeur true (vrai).
Les polygones sont des objets différents des autres tels que les rectangles, ovales
et les arcs car les points interieurs sont considérés comme étant dans le polygone
(ceci concerne les commandes du widget find closest et find overlapping) même
s'il n'est pas rempli.
Pour la plupart des autres objets, un point intérieur est considéré comme étant
dans l'objet seulement si l'objet est rempli ou s'il n'a ni remplissage ni bordure. Si vous désirez
un polygone non rempli dont les points intérieurs ne soient pas considérés à l'intérieur
du polygone, alors utilisez un objet de type ligne à la place.
Chaque objet de type rectangle peut avoir une bordure, un remplissage ou les deux.
Les rectangles sont créés par les commandes suivantes :
nom_du_canvas create rectangle x1 y1 x2 y2 ?option valeur option valeur ...?
nom_du_canvas create rectangle liste_des_coordonnées ?option valeur option valeur ...?
Les arguments x1, y1, x2, et y2 ou liste_de_coordonnées donnent
les coordonnées des deux coins diagonalement opposés du rectangle (le rectangle inclut les arrêtes supérieure
et gauche mais pas les arrêtes inférieure et droite).
Après les coordonnées, il peut y avoir un nombre quelconque de paires option-valeur, chacune d'elles appartenant à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur peuvent être
utilisées avec la commande itemconfigure du widget, pour modifier sa configuration.
Les options standards suivantes sont supportées par les objets de type rectangle :
-dash
-activedash
-disableddash
-dashoffset
-fill
-activefill
-disabledfill
-offset
-outline
-activeoutline
-disabledoutline
-outlinestipple
-activeoutlinestipple
-disabledoutlinestipple
-stipple
-activestipple
-disabledstipple
-state
-tags
-width
-activewidth
-disabledwidth
Un objet de type texte affiche une chaîne de caractères sur une ou plusieurs lignes.
Les objets de type texte supportent les opérations d'indexation et de sélection appelées par les commandes suivantes :
dchars, focus, icursor, index, insert, select.
Les objets de type texte sont créés par les commandes suivantes :
nom_du_canvas create text x y ?option valeur option valeur ...?
nom_du_canvas create text liste_de_coordonnées ?option valeur option valeur ...?
Les arguments x et y ou liste_de_coordonnées spécifient les coordonnées d'un point
utilisé pour positionner le texte (voir les options ci-dessous pour plus d'information sur les différentes
manières d'afficher du texte).
Après les coordonnées, il peut y avoir un nombre quelconque de paires option-valeur,
chacune appartient à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur
peuvent être utilisées avec la commande itemconfigure du widget, afin de changer sa configuration.
Les options standards suivantes sont supportées par les objets de type texte :
-fill
-activefill
-disabledfill
-stipple
-activestipple
-disabledstipple
-state
-tags
Les options suplémentaires suivantes sont supportées par les objets de type texte :
- -anchor position_de_l'ancre
-
Position_de_l'ancre indique comme positionner le texte relativement au
point de positionnement du texte ; il peut prendre n'importe laquelle des formes
acceptées par Tk_GetAnchor. Par exemple, si position_de_l'ancre
est center (centre) alors le texte est centré sur le point ; si position de l'ancre est n alors
le texte est dessiné tel que le centre du sommet du rectangle contenant le texte, soit positionné sur ce point.
La valeur par défaut de l'option est center.
- -font nom_de_la_police
-
Indique la police de caractère à utiliser.
Nom_de_la_police est n'importe laquelle des chaînes de caractères acceptées par Tk_GetFont.
Si cette option n'est pas spécifiée, la valeur par défaut dépend du système utilisé.
- -justify comment
-
Spécifie comment le texte doit être justifié.
Comment doit avoir une des valeurs suivantes : left, right ou center.
Cette option n'a de sens que si le texte est sur plusieurs lignes.
Si cette option n'est pas utilisée, la valeur par défaut est left.
- -text chaîne_de_caractères
-
Chaîne_de_caractères spécifie les caractères à afficher dans l'objet texte.
Les caractères ``nouvelle ligne'' provoquent un retour à la ligne.
Les caractères affichés peuvent aussi être modifiés en utilisant les commandes
insert et delete du widget.
La valeur par défaut de cette option, est la chaîne vide.
- -width longueur_de_la_ligne
-
Spécifie la longueur maximum d'une ligne. N'importe laquelle des formes
décrites dans la section COORDONNEES ci-dessus, peut être utilisée.
Si la valeur de cette option est zéro (valeur par défaut) alors le retour à ligne
ne se fait que si un caractère ``nouvelle ligne'' est rencontré.
Si la valeur de cette option est non-nulle alors toute ligne plus grande
que longueur_de_la_ligne est cassée juste avant un caractère ``espace'' qui
fait la ligne plus petite que longueur_de_la_ligne ; le caractère ``espace'' est alors
traité comme un caractère de type ``nouvelle ligne''.
Les objets de type window (fenêtre), permettent d'afficher une fenêtre dans un canvas;
à une position donnée.
Les objets de type window sont créés par les commandes suivantes :
nom_du_canvas create window x y ?option valeur option valeur ...?
nom_du_canvas create window liste_de_coordonnées ?option valeur option valeur ...?
Les arguments x et y ou liste_des_coordonnées spécifient les coordonnées d'un point
utilisé pour positionner la fenêtre (voir l'option -anchor ci-dessous pour plus d'informations).
Après les coordonnées, il peut y avoir un nombre quelconque de paire option-valeur, chacune d'elle appartenant à l'ensemble des options de configuration de l'objet. Les mêmes paires option-valeur peuvent être
utilisées avec la commande itemconfigure du widget, pour modifier sa configuration.
Les options standards suivantes sont supportées par les objets de type fenêtre :
-state
-tags
Les options supplémentaires suivantes sont supportées par les objets de type fenêtre :
- -anchor position_de_l'ancre
-
Position_de_l'ancre indique comment positionner la fenêtre relativement
au point de positionnement de l'objet ; il peut avoir n'importe laquelle des formes acceptées
par Tk_GetAnchor. Par exemple, si position_de_l'ancre
est center alors la fenêtre est centrée sur ce point : si
position_de_l'ancre est n alors la fenêtre sera dessinée telle que le centre
du sommet soit sur ce point.
La valeur par défaut est center.
- -height pixels
-
Spécifie la hauteur de l'objet fenêtre.
Pixels peut avoir n'importe laquelle des formes décrites dans la section COORDONNEES ci-dessus.
Si cette option n'est pas spécifiée, ou si elle est spécifiée par une chaîne vide, alors la hauteur de
la fenêtre est fixée par une requête interne.
- -width pixels
-
Spécifie la larguer de l'objet fenêtre.
Pixels peut avoir n'importe laquelle des formes décrites dans la section COORDONNEES ci-dessus.
Si cette option n'est pas spécifiée, ou si elle est spécifié par une chaîne vide, alors la largeur de
la fenêtre est fixée par une requête interne.
- -window chemin
-
Spécifie la fenêtre à associer avec l'objet.
La fenêtre spécifiée par chemin doit être une fille du widget
canvas ou une fille d'un des ancêtres du widget canvas.
Chemin doit se référer à un toplevel.
Note : dû aux restrictions liées à la façon dont les fenêtres sont gérées, il n'est pas
possible de dessiner d'autres objets graphiques (tels que des lignes ou des images) sur ces
fenêtre. Un objet fenêtre peut cacher un graphique qui le chevauche, sans tenir compte
de l'ordre dans la liste d'affichage.
Il est possible, pour des applications individuelles, de définir de nouveaux
types d'objets pour le widget canvas, en utilisant du code C.
Voir la documentation Tk_CreateItemType.
Dans l'implémentation courante, les nouveaux canvas ne possèdent pas de comportement par défaut :
vous devez exécuter explicitement les commandes Tcl définissant le comportement de l'objet.
Le widget canvas est très fortement inspiré du programme ezd de Joel Bartlett.
Ezd définit des structures graphiques dans un environnement Scheme et a précédé le
widget canvas d'une année ou deux. Ses mécanismes très simples pour placer et animer les objets
graphiques ont inspiré les différentes fonctions du canvas.
canvas, widget
Copyright © 1992-1994 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.
Copyright © 1997-1999 Scriptics Corporation.
Copyright © 1995-1997 Roger E. Critchlow Jr.
Copyright © 2003 - Le Portail Tcl/Tk Francophone.