- NOM
- menu, tk_menuSetFocus - Crée et manipule les menus
- SYNTAXE
- menu pathName ?options?
- tk_menuSetFocus pathName
- OPTIONS STANDARD
-
-
- -activebackground, activeBackground, Foreground
- -activeborderwidth, activeBorderWidth, BorderWidth
- -activeforeground, activeForeground, Background
- -background ou -bg, background, Background
- -borderwidth ou -bd, borderWidth, BorderWidth
- -cursor, cursor, Cursor
- -disabledforeground, disabledForeground, DisabledForeground
- -font, font, Font
- -foreground ou -fg, foreground, Foreground
- -relief, relief, Relief
- -takefocus, takeFocus, TakeFocus
- OPTIONS SPECIFIQUES AU WIDGET
- -postcommand, postCommand, Command
- -selectcolor, selectColor, Background
- -tearoff, tearOff, TearOff
- -tearoffcommand, tearOffCommand, TearOffCommand
- -title, title, Title
- -type, type, Type
- INTRODUCTION
- COMMANDES
- SEPARATEURS
- CASES A COCHER
- BOUTONS RADIO
- CASCADES
- MENUS DECHIRABLES
- BARRES DE MENU
- MENUS SPECIAUX DES BARRES DE MENU
- CLONES
- COMMANDES DE WIDGET
- nombre
- active
- end
- last
- none
- @nombre
- modèle
- pathName activate index
- pathName add type ?option valeur option valeur ...?
- -activebackground valeur
- -activeforeground valeur
- -accelerator valeur
- -background valeur
- -bitmap valeur
- -columnbreak valeur
- -commande valeur
- -font valeur
- -foreground valeur
- -hidemargin valeur
- -image valeur
- -indicatoron valeur
- -label valeur
- -menu valeur
- -offvalue valeur
- -onvalue valeur
- -selectcolor valeur
- -selectimage valeur
- -state valeur
- -underline valeur
- -value valeur
- -variable valeur
- pathName cget option
- pathName clone newPathname ?cloneType?
- pathName configure ?option? ?valeur option valeur ...?
- pathName delete index1 ?index2?
- pathName entrycget index option
- pathName entryconfigure index ?options?
- pathName index index
- pathName insert index type ?option valeur option valeur ...?
- pathName invoke index
- pathName post x y
- pathName postcascade index
- pathName type index
- .VS
- pathName yposition index
- CONFIGURATIONS DE MENU
- Menus Déroulant dans les Barres de Menus
- Menus Déroulant dans les Boutons de Menus
- Menus Surgissants
- Menus d'Options
- Menus Déchirables
- BINDINGS PAR DEFAUT
- BUGS
- MOTS-CLES
menu, tk_menuSetFocus - Crée et manipule le widget menu
menu pathName ?options?
tk_menuSetFocus pathName
-
-
- -activebackground, activeBackground, Foreground
- -activeborderwidth, activeBorderWidth, BorderWidth
- -activeforeground, activeForeground, Background
- -background ou -bg, background, Background
- -borderwidth ou -bd, borderWidth, BorderWidth
- -cursor, cursor, Cursor
- -disabledforeground, disabledForeground, DisabledForeground
- -font, font, Font
- -foreground ou -fg, foreground, Foreground
- -relief, relief, Relief
- -takefocus, takeFocus, TakeFocus
- Command-Line Name: -postcommand
- Database Name: postCommand
- Database Class: Command
- Si cette option est spécifiée alors elle indique la commande Tcl à exécuter
chaque fois que le menu est activé. La commande est appelée par la commande post
avant d'activer menu. Notez qu'avec la version 8.0 sur Macintosh
et Windows, toutes les commandes d'un menu sont exécutées avant d'être
activées. Ceci est dû aux limitations des gestionnaires de menu de ces plateformes.
- Command-Line Name: -selectcolor
- Database Name: selectColor
- Database Class: Background
- Pour les éléments de menu qui sont cases à cocher ou boutons radio, cette option
indique la couleur à afficher in l'indicateur quand la case à cocher
ou le bouton radio est sélectionné.
- Command-Line Name: -tearoff
- Database Name: tearOff
- Database Class: TearOff
- Cette option doit avoir une valeur booléenne correcte, qui indique
si oui ou non le menu doit inclure une entrée déchirable en
premier. Si c'est le cas, ce sera l'entrée 0 du menu et les autres
entrées seront numérotées en commencant à 1. Les bindings par défaut
du menu prépare le menu à être déchiré quand l'entrée déchirable
est appelée.
- Command-Line Name: -tearoffcommand
- Database Name: tearOffCommand
- Database Class: TearOffCommand
- Si cette option a une valeur non-vide, alors elle indique une commande Tcl
à appeler chaque fois que le menu est déchiré. La commande actuelle
consistera en la valeur de cette option, suivi d'un espace, suivi
du nom du menu, suivi d'un espace, suivi du
nom du menu déchiré. Par exemple, si
l'option est ``a b'' et que le menu .x.y est déchiré pour
créer un nouveau menu .x.tearoff1, alors la commande
``a b .x.y .x.tearoff1'' sera appelée.
- Command-Line Name: -title
- Database Name: title
- Database Class: Title
- La chaîne sera utilisé comme titre de la fenêtre créée quand le menu est
déchiré. Si le titre est NULL, alors la fenêtre aura le titre
du menubutton ou le texte de l'élément cascade à partir duquel ce menu
a été appelé.
- Command-Line Name: -type
- Database Name: type
- Database Class: Type
- Cette option peut être l'une de menubar, tearoff, ou
normal, et est fixée quand le menu est créé. Bien que la chaîne
retournée par la base de données de configuration change si cette option est
modifiée, ceci n'affecte pas le comportement du menu. Ceci est utilisé
par le mécanisme de clonage et n'est pas normalement modifié en dehors de la bibliothèque Tk.
La commande menu crée une fenêtre top-level (désignée
par l'argument pathName ) et en fait un widget menu.
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 du menu comme ses couleurs et sa police de caractères.
La commande menu retourne son
argument pathName. A l'instant ou cette commande est appelée,
il ne doit pas exister une fenêtre nommée pathName, mais
le parent de pathName doit exister.
Un menu est un widget qui affiche une collection d'entrées d'une ligne disposées
en une ou plusieurs colonnes. Il existe plusieurs différent types d'entrées,
chacune avec différentes propriétés. Les entrées de différents types peuvent être
combinée en un seul menu. Les entrées de menu ne sont pas les même que
que les widgets entrée de texte. En fait, les entrées de menu ne sont pas des widgets distincts; le menu entier est un widget.
Les entrées de menu sont affichées avec jusqu'à trois champs séparés.
Le champ principal est un label sous forme de chaîne de texte,
un bitmap, ou une image, contrôlé par les options -label,
-bitmap, et -image de l'entrée.
Si l'option -accelerator est spécifiée pour une entrée alors un second
champ texte est affiché à droite du libellé. L'accelérateur
décrit généralement une séquence de touches qui peut être tapée dans l'application pour provoquer le même effet que l'appel de l'entrée de menu.
Le troisième champ est un indicator. L'indicateur est présent seulement pour les
cases à cocher ou les boutons radio. Il indique si l'entrée
est sélectionnée ou non, et est affiché à gauche de la
chaîne de l'entrée.
Dans une utilisation normale, une entrée devient active (s'affiche différemment)
chaque fois que le pointeur de souris passe au-dessus de l'entrée. Si un bouton de souris est relaché au-dessus de l'entrée alors l'entrée est appelée.
L'effet de l'appel est différent pour chaque type d'entrée;
ces effets sont décrits ci-dessous dans les sections sur les entrées
individuelles.
Les entrées peuvent être disabled, dans ce cas leurs libellés
et accelerateurs seront affichés
en grisé.
Les bindings par défaut du menu ne permettent pas l'appel
d'une entrée desactivée.
Les entrée desactivées peuvent être ré-activées.
Quand une entrée de menu active est choisie, un évènement virtuel <<MenuSelect>>
est envoyé au menu. L'article actif peut alors être extrait du
menu, et une action peut être choisie, comme paramétrer
le texte de l'aide contextuelle de l'entrée.
L'entrée de menu la plus courante est l'entrée commande , qui
se comporte comme un widget bouton. Quand a une entrée commande est
appelée, une commande Tcl est exécutée. La commande Tcl
est spécifiée avec l'option -command.
Un separateur est une entrée qui affiche une ligne horizontale. Un separateur ne peut être activé ou appelé, et il n'a d'autre
comportement que son apparence.
Une entrée coche se comporte comme un widget checkbutton.
Quand elle est appelée elle bascule entre l'état sélectionné
et déselectionné. Quand l'entrée est sélectionnée, une valeur particulière
est stockée dans une variable globale particulière (comme déterminée par
les options -onvalue et -variable de l'entrée); quand
l'entrée est déselectionnée une autre valeur (déterminée par l'option
-offvalue ) est stockée dans la variable globale.
Un indicateur est affichée à gauche du libéllé d'une
entrée checkbutton. Si l'entrée est sélectionné alors l'indicateur est affiché
de la couleur indiquée par l'option -selectcolor;
autrement l'indicateur center est affiché de la couleur d'arrière-plan du
menu. Si une option -command est spécifiée pour une
entrée checkbutton, alors sa valeur est evalué comme une commande Tcl chaque fois que l'entrée est appelée; ceci se produit après la sélection de l'entrée.
Une entrée de menu bouton radio se comporte comme un widget radiobutton.
Les entrées bouton radio sont organisée en groupes parmi lesquels seule une
entrée peut être sélectionnée à la fois. Quand une entrée
devient sélectionnée elle stocke une valeur dans une
variable globale (comme déterminé par les options -value et
-variable de l'entrée). Cette action provoque la déselection
de toute entrée précédemment sélectionnée dans le même groupe.
Quand une entrée est sélectionnée, tout changement de la variable associée à l'entrée
provoque la déselection de l'entrée.
Le regroupement des entrées bouton radio est déterminé par leur
variable associée: si deux entrées ont la même variable associée
alors ils sont dans le même groupe.
Un indicateur est affiché à gauche du libéllé de chaque
entrée bouton radio. Si l'entrée est sélectionnée alors l'indicateur
est affiché de la couleur indiquée par l'option -selectcolor;
autrement l'indicateur est affiché de la couleur d'arrière-plan du
menu. Si une option -command est spécifiée pour une entrée bouton radio
, alors sa valeur est evaluée comme une commande Tcl chaque fois que l'entrée
est appelée; ceci se produit après la sélection de l'entrée.
Une entrée en cascade est associée à un menu (determiné
par l'option -menu ). Les entrées en cascade permettent la construction
de menus en cascade.
La commande widget postcascade peut être utilisée pour ouvrir et fermer les menus associés consécutifs à l'entrée en cascade.
Les menus associés doivent être des enfants du menu contenant
l'entrée en cascade (afin que le parcours des menus fonctionne
correctement).
Une entrée en cascade ouvre son menu associé en appelant une
commande Tcl de la forme
menu post x y
où menu est le nom de chemin du menu associé, et x
et y sont les coordonnées de fenêtre du coin supérieur droit
de l'entrée en cascade .
Sous Unix, le menu inférieur est fermé avec une commande Tcl de la
forme
menu unpost
où menu est le nom du menu associé.
Sur les autres plateformes, le code natif de la plateforme prend soin de fermer le
menu.
Si une option -command est spécifiée pour une entrée en cascade alors elle est
evaluée comme commande Tcl chaque fois que l'entrée est appelée. Ceci n'est pas
supporté sous Windows.
Une entrée déchirable apparait en haut du menu s'il est activé avec l'option
tearOff. Ce n'est pas comme les autres entrées de menu dans le sens ou
elle ne peut être créée avec la commande widgetadd et
ne peut être effacé avec la commande widget delete.
Quand une entrée déchirable est créée elle apparait comme une ligne pointillée en
haut du menu. En plus des bindings par défaut, l'appel d'une entrée déchirable
crée une copie flottante du menu et de tous ses sous-menus.
N'importe quel menu peut être transformé en barre de menus pour une fenêtre toplevel (voir la
commande toplevel pour la syntaxe). Sur Macintosh, chaque fois que la
toplevel est au premier plan, les articles de ce menu apparaîtront dans la
barre de menus en haut du moniteur principal. Sous Windows et Unix, ces
articles de menu seront affichés dans une barre de menus en haut de la
fenêtre. Ces menus se comporteront conformément aux règles de leurs
plateformes. Pour chaque menu transformé en barre de menus, un menu clone est
généré. Voir la section CLONES pour une plus ample information.
Comme signalé, les barre de menus peuvent se comporter différemment sur des plateformes différentes. Un
exemple concerne la gestion des coches et des boutons radio
à l'intérieur du menu. Bien qu'il soit permis d'inclure ces éléments de menu sur
les barres de menus, ils ne peuvent être dessinés avec des indicateurs sur certaines plateformes, dû à des restrictions du système.
Certains menus dans une barre de menus seront traités spécialement. Sur Macintosh,
l'accès aux menus speciaux Pomme et Aide est fourni. Sous Windows,
l'accès au menu Système Windows dans chaque fenêtre est fourni. Sous X Windows,
un menu d'aide special justifié à droite est fourni. Dans tous les cas, ces
menus doivent être créés avec la commande nom de la barre de menus concaténé
avec le nom spécial. Donc pour une barre de menus nommée .menubar, Sur Macintosh,
les menus speciaux seront .menubar.apple et .menubar.help; sous Windows,
le menu special sera .menubar.system; sous X Windows, le
menu d'aide sera .menubar.help.
Quand Tk rencontre un menu Pomme sur un Macintosh, le contenu de ce menu devient
le premier article du menu Pomme sur l'écran chaque fois que la fenêtre
contenant la barre de menus est au premier plan. Le menu est le
premier que l'utilisateur voit et a pour titre le logo Apple.
A la suite de tous les éléments définis par Tk, le menu aura un séparateur,
suivi par tous les éléments du dossier Pomme de l'utilisateur.
Commme le système utilise une procédure de définition de menu différente pour
le menu Pomme de celle que Tk utilise pour ses menus, et que les APIs système ne
supportent pas totalement ce Tk tente de faire, l'élément de menu aura seulement
son texte affiché. Aucun attributs de police, images, bitmaps, ou couleurs
ne seront affichés. De plus, un menu avec un élément tearoff aura
le tearoff affiché comme "(TearOff)".
Quand Tk rencontre un menu Aide sur Macintosh, le contenu du menu est
ajouté au menu d'aide standard à la droite de la barre de menu de l'utilisateur
chaque fois que la barre de menu de l'utilisateur est au premier plan. Le premier élément du menu est fourni par Apple. Comme pour le menu Pomme, la personnalisation de ce
menu est limitée à ce que le système fournit.
Quand Tk rencontre un menu Système sous Windows, ses éléments sont ajoutés au
menu système auquel la barre de menu est attachée. Ce menu a une icône
représentant une barre d'espace, et peut être appelé avec la souris ou en tapant
Alt+Spacebar. Dû aux limitations de l'API Windows , tout changement de polices,
couleurs, images, bitmaps, ou d'images tearoff n'apparaîtront pas dans le
menu système.
Quand Tk rencontre un menu Aide sous X Windows, le menu est déplacé à la fin de la
barre de menu et est justifié à droite.
Quand un menu est positionné comme barre de menu d'une fenêtre toplevel, ou quand un menu
est déchiré, un clone du menu est généré. Ce clone est un widget menu
indépendant, mais il est un enfant de l'original. Les changement dans la
configuration de l'original sont reflétés dans le
clone. De plus, toutes les cascades qui sont pointées to sont également clonées
ainsi le parcours du menu fonctionnera bien. Les clones sont détruits quand
soit le tearoff ou la barre de menu disparait, ou quand le menu original est
détruit.
La commande menu 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.
Plusieurs des commandes widget du menu attendent comme argument un
indicateur de l'entrée sur laquelle opérer. Ces
indicateurs sont appelés indexes et peuvent être spécifiés sous n'importe
quelle des formes suivantes:
- nombre
-
Spécifie l'entrée numériquement, où 0 correspond
à la première entrée du menu, 1 à l'entrée en dessous, et
ainsi de suite.
- active
-
Indique l'entrée qui est actuellement active. Si aucune entrée n'est
active alors cette forme est équivalente à none. Cette forme ne
peut être abrégée.
- end
-
Indique la dernière entrée du menu. Si il n'y a pas
d'entrée dans le menu alors cette forme est équivalente à none.
Cette forme ne peut être abrégée.
- last
-
Identique à end.
- none
-
Indique``aucune entrée''; ceci est utilisé plus communément avec
l'option activate pour désactiver toutes les entrée du
menu. Dans la plupart des cas la spécification de none ne provoque
rien dans la commande widget.
Cette forme ne peut être abrégée.
- @nombre
-
Sous cette forme, nombre est traité comme la coordonnée y dans le
fenêtre du menu; l'entrée la plus proche de cette coordonnée y est utilisée.
Par exemple, ``@0'' indique l'entrée supérieure dans la
fenêtre.
- modèle
-
Si l'index ne satisfait aucune des formes ci-dessus alors cette
forme est utilisée. Modèle est comparé au libéllé de
chaque entrée du menu, dans l'ordre de haut en bas, jusqu'à ce qu'une
entrée correspondante soit trouvée. Les règles de Tcl_StringMatch
sont utilisées.
Les commandes widget suivantes sont possibles pour les widgets menu:
- pathName activate index
-
Change l'état de l'entrée indiquée par index en active
et la réaffiche en utilisant ses couleurs actives.
Toute entrée précédemment active est désactivée. Si index
est spécifié comme none, ou si l'entrée spécifiée est
desactivée, alors le menu finit sans entrée active.
Retourne une chaîne vide.
- pathName add type ?option valeur option valeur ...?
-
Ajoute une nouvell'entrée en bas du menu. Le type de la nouvell'entrée
est indiqué par type et doit être l'un de cascade,
checkbutton, commande, radiobutton, ou separator,
ou une abréviation unique de l'un d'entre eux. Si des arguments supplémentaires
sont présent, ils specifient une des options suivantes:
- -activebackground valeur
-
Spécifie une couleur d'arrière-plan à utiliser pour l'affichage de cette entrée quand elle est active.
Si cette option est spécifiée comme une chaîne vide (par défaut), alors l'option
activeBackground du menu entier est utilisée.
Si la variable tk_strictMotif a été fixée pour demander une compatibilité avec
Motif stricte, alors cette option est ignorée et l'option -background
est utilisée à sa place.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -activeforeground valeur
-
Spécifie la couleur de premier plan à utiliser pour l'affichage de cette entrée quand elle est active.
Si cette option est spécifiée comme une chaîne vide (par défaut), alors l'option
activeForeground du menu entier est utilisée.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -accelerator valeur
-
Spécifie une chaîne à afficher à droite de l'entrée de menu.
Normalement décrit une combinaison de touches qui peut être
tapée pour appeler la même fonction que l'entrée de menu. Cette option
n'est pas disponible pour les séparateurs et les entrées tear-off.
- -background valeur
-
Spécifie une couleur d'arrière-plan à utiliser pour l'affichage de cette entrée quand elle est dans l'état normal (ni active ni desactivée).
Si cette option est spécifiée comme une chaîne vide (par défaut), alors l'option
background du menu entier est utilisée.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -bitmap valeur
-
Spécifie un bitmap à afficher dans le menu à la place du libellé texte, sous n'importe quelle des formes acceptées par Tk_GetBitmap.
Cette option surcharge l'option -label mais peut être réinitialisée
à une chaîne vide pour permettre l'affichage d'un libellé texte.
Si une option -image a été spécifié, elle écrase
-bitmap.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -columnbreak valeur
-
Quand cette option est à zéro, les entrées apparaissent sous la précédente. Quand
cette option est à un, le menu apparait en haut d'une nouvelle colonne dans le
menu.
- -commandvaleur
-
Spécifie une commande Tcl à exécuter quand l'entrée de menu est appelée.
Non disponible pour les séparateurs et les entrées tear-off.
- -font valeur
-
Spécifie la police de caractère à utiliser pour l'affichage du libéllé ou de l'accelerateur de cette entrée.
Si cette option est spécifiée comme une chaîne vide (par défaut) alors
l'option font du menu entier est utilisée.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -foreground valeur
-
Spécifie la couleur de premier plan à utiliser pour l'affichage de cette entrée quand elle est dans l'état normal (ni active ni desactivée).
Si cette option est spécifiée comme une chaîne vide (par défaut), alors l'option
foreground du menu entier est utilisée.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -hidemargin valeur
-
Spécifie si les marges standard doivent être dessinées pour cette entrée de menu. Ceci est utile quand on crée des palettes avec des images à l'intérieur, c.a.d.,
des palettes de couleurs, des palettes de modèles, etc. 1 indique que la marge de
l'entrée est cachée; 0 signifie que la marge est utilisée.
- -image valeur
-
Spécifie l'image à afficher dans le menu à la place d'une chaîne de texte
ou d'un bitmap
L'image doit avoir été créée par un précédent appel de
image create.
Cette option surcharge les options -label et -bitmap
mais peut être réinitialisée à une chaîne vide pour permettre l'affichage d'un libéllé ou d'un bitmap.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -indicatoron valeur
-
Disponible seulement pour les coches et les boutons radio.
Value est un booléen qui détermine si oui ou non l'indicateur doit être affichée.
- -label valeur
-
Spécifie une chaîne à afficher comme identifiant dans l'entrée de menu. Non disponible pour les séparateurs et les entrées tear-off.
- -menu valeur
-
Disponible seulement pour les entrées cascade. Spécifie le nom de chemin du
sous-menu associé à cette entrée.
Le sous-menu doit être un enfant du menu.
- -offvalue valeur
-
Disponible seulement pour les coches. Spécifie la valeur à
stocker dans la variable associée à l'entrée quand l'entrée est
déselectionnée.
- -onvalue valeur
-
Disponible seulement pour les coches. Spécifie la valeur à
stocker dans la variable associée à l'entrée quand l'entrée est sélectionnée.
- -selectcolor valeur
-
Disponible seulement pour les coches et les boutons radio.
Spécifie la couleur à afficher dans l'indicateur quand l'entrée est
sélectionnée.
Si la valeur est une chaîne vide(par défaut) alors l'option selectColor
du menu détermine la couleur de l'indicateur.
- -selectimage valeur
-
Disponible seulement pour les coches et les boutons.
Spécifie une image à afficher dans l'entrée (à la place de
the -image option) quand il est sélectionné.
Value est le nom d'une image, qui doit avoir été créée
par un précédent appel de image create.
Cette option est ignorée à moins que l'option -image ait
été spécifiée.
- -state valeur
-
Spécifie un des trois états de l'entrée: normal, active,
ou désactivée. Dans l'état normal, l'entrée est affichée en utilisant l'option
foreground du menu et l'option background
de l'entrée ou du menu.
L'état actif est généralement utilisé quand le pointeur est au-dessus l'entrée.
Dans l'état actif l'entrée est affichée en utilisant l'option activeForeground
pour le menu en conjonction avec l'option activebackground de
l'entrée. L'état désactivé signifie que l'entrée
doit être insensible: les bindings par défaut refuseront d'activer
ou d'appeller l'entrée.
Dans cet état l'entrée est affichée conformément à l'option
disabledForeground du menu et l'option background de l'entrée.
Cette option n'est pas disponible pour les séparateurs.
- -underline valeur
-
Spécifie l'index entier du caractère à souligner dans l'entrée.
Cette option est également utilisée par les bindings par défaut et utilisée pour
implémenter le parcours du clavier.
0 correspond au premier caractère du texte affichée dans l'entrée,
1 au caractère suivant, et ainsi de suite.
Si un bitmap ou une image est affichée dans l'entrée alors cette option est ignorée.
Cette option n'est pas disponible pour les séparateurs et les entrées tear-off.
- -valuevaleur
-
Disponible seulement pour les boutons radio. Spécifie la valeur à
stocker dans la variable associée à l'entrée quand l'entrée est sélectionnée.
Si une chaîne vide est spécifiée, alors l'option -label
de l'entrée sera la valeur à stocker dans la variable.
- -variable valeur
-
Disponible seulement pour les coches et les boutons radio. Spécifie
le nom d'une valeur globale à fixer quand l'entrée est sélectionnée.
Pour les coches la variable est également fixée quand l'entrée
est déselectionnée. Pour les boutons radio, changer la variable
provoque la désélection de l'entrée actuellement sélectionnée.
La commande widget add retourne une chaîne vide.
- 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 menu.
- pathName clone newPathname ?cloneType?
-
Génère un clone du menu courant nommé newPathName. Ce clone
est un menu indépendant, mais tout changement du clone est
propagé aux menu original et vice versa. cloneType peut être
normal, menubar, ou tearoff. Ne doit pas normalement être
appelée en dehors de la bibliothèque Tk. Voir la section CLONES pour plus
d'information.
- 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 disponible pour pathName (voir Tk_ConfigureInfo pour une
information sur le format de cette liste). Si option est spécifiée
sans valeur, alors la commande retourne une liste décrivant l'option
désignée (cette liste sera identique à la sous-liste correspondante
de la valeur retournée si aucune option n'est indiquée). Si
une ou plusieurs paires option-valeur sont fournies, 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 menu.
- pathName delete index1 ?index2?
-
Efface toutes les entrées de menu entre index1 et
index2 inclus.
Si index2 est omis alors il est par défaut de index1.
Les tentatives d'effacer une entrée de menu tear-off sont ignorées (à la place, vous
devez changer l'option tearOff pour enlever l'entrée tear-off).
- pathName entrycget index option
-
Retourne la valeur courante d'une option de configuration pour
l'entrée indiquée par index.
Option peut prendre n'importe quelle des valeurs acceptées par la commande add.
- pathName entryconfigure index ?options?
-
cette commande est identique à la commande configure, excepté qu'elle
s'applique aux options d'une entrée individuelle, ou configure
s'applique aux options du menu entier.
Options peut prendre n'importe quelle des valeurs acceptées par la commande add. Si des options sont spécifiées, ces options sont modifiées
comme indiqué dans la commande et la commande retourne une chaîne vide.
Si aucunes options ne sont spécifiées, retourne une liste décrivant
les options courantes de l'entrée index (voir Tk_ConfigureInfo pour
information sur le format de cette liste).
- pathName index index
-
Retourne l'index numérique correspondant à index, ou
none si index a été spécifié comme none.
- pathName insert index type ?option valeur option valeur ...?
-
Identique à la commande add excepté qu'elle insère la nouvelle
entrée juste avant l'entrée indiquée par index, au lieu de l'ajouter
à la fin du menu. Les arguments type, option, et valeur
ont les même interprétations que pour la commande add. Il n'est pas possible d'insérer de nouvelles entrées de menu avant l'entrée
tear-off, si le menu en a une.
- pathName invoke index
-
Appelle l'action de l'entrée de menu. Voir la sections sur les
entrées individuelles ci-dessus pour les détails sur ce qui se produit. Si
l'entrée de menu est desactivée alors rien ne se passe. Si
l'entrée a une commande associée alors le resultat de cette
commande est retourné comme résultat de la commande invoke . Autrement le resultat est une chaîne vide. Note: l'appel
d'une entrée de menu ne déselectionne pas automatiquement le menu; les bindings par défaut s'occupent normalement de cela avant l'appel de la commande invoke.
- pathName post x y
-
Prépare le menu à être affiché sur l'écran aux
coordonnées indiquées par x et y. Ces coordonnées sont
ajustées si nécessaire pour assurer que le menu entier est visible à
l'écran. cette commande normalement retourne une chaîne vide.
Si l'option postCommand a été spécifiée, alors sa valeur est
exécutée comme script Tcl avant d'aficher le menu et le résultat de
ce script est retourné comme résultat de la commande post.
Si une erreur se produit pendant l'exécution de la commande, alors l'erreur est
retournée sans afficher le menu.
- pathName postcascade index
-
Affiche le sous-menu associé avec l'entrée cascade indiquée par
index, et cache tout sous-menu précédemment affiché.
Si index ne correspond pas à une entrée cascade,
ou si pathName n'est pas affiché,
la commande n'a pas d'effet excepté de cacher tout sous-menu actuellement affiché.
- pathName type index
-
Retourne le type de l'entrée de menu indiquée par index.
C'est l'argument type transmis à la commande add
quand l'entrée a été créée, comme command
ou separator, ou tearoff pour une entrée tear-off.
- .VS
-
pathName unpost
Libère la fenêtre ainsi elle n'est plus affichée. Si un menu en cascade
de niveau inférieur est affiché, le fait disparaitre. Retourne une
chaîne vide. Cette sous-commande ne fonctionne pas sous Windows et
Macintosh, car ces plateformes ont leurs modes de gestion de l'affichage des menus.
- pathName yposition index
-
Retourne une chaîne décimale donnant les coordonnées y à l'intérieur de la fenêtre de menu du premier pixel de l'entrée spécifié par index.
Les bindings par défaut supportent quatre différentes utilisations des menus:
- Menus Déroulant dans les Barres de Menus
-
Le cas le plus courant. Vous créez un widget menu qui deviendra la barre de
menu. Vous ajoutez ensuite des entrées en cascade à ce menu, en indiquant les
menus déroulants que vous souhaitez utiliser dans votre barre de menus. Vous créez enfin tous les menus déroulants. Une fois que vous avez fait ceci, spécifiez le menu en utilisant l'option -menu de la commande toplevel. Voir la page de manuel
toplevel pour les détails.
- Menus Déroulant dans les Boutons de Menus
-
C'est la manière compatible de créer des barres de menus. Vous créez un widget menubutton pour chaque menu top-level, et généralement vous disposez une séries de
menubuttons en ligne dans une fenêtre barre de menus. Vous créez également les menus de premier niveau
et tous les sous-menus en cascade, et les liez ensemble avec les options -menu
des menubuttons et des entrées de menu en cascade. Le menu de premier niveau doit
être un enfant du menubutton, et chaque sous-menu doit être un enfant du
menu auquel il se réfère. Une fois que vous avez fait ceci, les bindings par défaut
permettront aux utlisateurs de parcourir et d'appeller l'arbre des menus via son
menubutton; voir la page de manuel menubutton pour les détails.
- Menus Surgissants
-
Les menus Popup s'affichent généralement en réponse à un clic de souris ou
une séquence de touches. Vous créez les menus popup et tous leurs sous-menu en cascade,
ensuite vous appelez la procédure tk_popup au moment approprié pour afficher le menu.
- Menus d'Options
-
Un menu d'options consiste en un menubutton avec un menu associé
qui vous permet de choisir une parmi plusieurs valeurs. La valeur courante
est affichée dans le menubutton et est également stockée dans une
variable globale. Utilisez la procédure tk_optionMenu pour créer des
menubuttons à option et leurs menus.
- Menus Déchirables
-
Vous créez un menu déchirable en appelant l'entrée tear-off (en cliquant sur les pointillé NDT.)en haut d'un menu existant. Les bindings par défaut créeront un nouveau menu qui est une copie du menu original et l'affiche comme une fenêtre top-level. Le menu déchirable se comporte de même que le menu original.
Tk automatiquement crée des bindings de classe pour les menus qui leur donne
le comportement par défaut suivant:
- [1]
-
Quand la souris entre dans un menu, l'entrée sous le curseur de la souris
s'active; si la souris se déplace dans le menu, l'entrée active
change en suivant la souris.
- [2]
-
Quand la souris quitte un menu toutes les entrées dans le menu
se désactivent, excepté dans le cas où la souris va
d'un menu vers un sous-menu en cascade.
- [3]
-
Quand un bouton est relaché au-dessus un menu, l'entrée active (si elle existe) est appelée. Le menu disparait également à moins que ce soit un menu déchirable.
- [4]
-
Les touches Espace et Entrée appellent l'entrée active et
cachent le menu.
- [5]
-
Si une des entrées d'un menu a une lettre soulignée avec
avec l'option -underline, alors l'appui sur une des touches
des lettres soulignées (ou son equivalent majuscule ou minuscule) appelle cette
entrée et cache le menu.
- [6]
-
La touche Echappement annule la sélection dans un menu sans appeler quelconque
entrée. Elle cache également le menu à moins que ce soit un menu déchirable.
- [7]
-
Les touches Bas et Haut activent l'entrée inférieure ou supérieure suivante
dans le menu. Quand la fin du menu est atteinte, l'entrée active
passe à l'autre extrémité.
- [8]
-
La touche Gauche se déplace vers le menu suivant à gauche.
Si le menu courant est un sous-menu en cascade, alors the sous-menu est
caché et l'entrée de menu courante devient l'entrée en cascade
dans le parent.
Si le menu courant est un menu top-level affiché depuis un
menubutton, alors le menubutton courant est caché et le
menubutton suivant à gauche est affiché.
Autrement la touche n'a pas d'effet.
L'ordre de gauche à droite des menubuttons est déterminés par leur
ordre d'empilement: Tk suppose que le menubutton inférieur (qui
est par défaut le premier créé) est à gauche.
- [9]
-
La touche Droite se déplace vers le menu suivant à droite.
Si l'entrée courante est une entrée en cascade, alors le sous-menu est
affiché et l'entrée de menu courante devient la première entrée
dans le sous-menu.
Autrement, si le menu courant a été affiché depuis un
menubutton, alors le menubutton courant est caché et le
menubutton suivant à droite est affiché.
Les entrées de menu desactivées sont inertes: elles ne s'activent pas et
ignorent les clics de souris.
Plusieurs des bindings utilisent la commande tk_menuSetFocus.
Elle sauvegarde le focus courant et place le focus sur son argument pathName, qui est un widget menu.
Le comportement des menus peut être changé en définissant de nouveaux bindings pour
des widgets individuels ou en redéfinissant les bindings de classe.
Actuellement it n'est pas possible d'utiliser la base de données
d'options pour spécifier des valeurs pour les options des entrées individuelles.
menu, widget
Copyright © 1990-1994 The Regents of the University of California.
Copyright © 1994-1997 Sun Microsystems, Inc.
Copyright © 1995-1997 Roger E. Critchlow Jr.
Traduit en 2002 par Michel Salvagniac
Copyright © 2003 - Le Portail Tcl/Tk Francophone.