  NOM
    wm - Communique avec le gestionnaire de fenêtres
  SYNTAXE
    wm option fenêtre ?args?
  DESCRIPTION
    wm aspect fenêtre ?minNumer minDenom maxNumer maxDenom?
    wm client fenêtre ?NOM?
    wm colormapwindows fenêtre ?windowList?
    wm command fenêtre ?valeur?
    wm deiconify fenêtre
    wm focusmodel fenêtre ?active|passive?
    wm frame fenêtre
    wm geometry fenêtre ?newGeometry?
    wm grid fenêtre ?baseWidth baseHeight widthInc heightInc?
    wm group fenêtre ?pathName?
    wm iconbitmap fenêtre ?bitmap?
    wm iconify fenêtre
    wm iconmask fenêtre ?bitmap?
    wm iconname fenêtre ?newName?
    wm iconposition fenêtre ?x y?
    wm iconwindow fenêtre ?pathName?
    wm maxsize fenêtre ?largeur hauteur?
    wm minsize fenêtre ?largeur hauteur?
    wm overrideredirect fenêtre ?boolean?
    wm positionfrom fenêtre ?who?
    wm protocol fenêtre ?NOM? ?commande?
    wm resizable fenêtre ?largeur hauteur?
    wm sizefrom fenêtre ?who?
    wm state fenêtre ?newstate?
    wm title fenêtre ?chaîne?
    wm transient fenêtre ?maître?
    wm withdraw fenêtre
  GESTION DE LA GEOMETRIE
  GESTION DE LA GEOMETRIE EN GRILLE
  BUGS
  MOTS-CLES

### NOM

wm - Communique avec le gestionnaire de fenêtres

### SYNTAXE

wm option fenêtre ?args?

### DESCRIPTION

La commande wm est utilisé pour interagir avec le gestionnaire de fenêtres de manière à contrôler des choses comme le titre de la fenêtre, sa géometrie, ou la façon de laquelle elle peut être retaillée. La commande wm peut prendre n'importe quel nombre de formes différentes, dépendantes de l'argument option. Toutes les formes attendent au moins un argument supplémentaire, fenêtre, qui doit être le nom de chemin d'une fenêtre top-level.

Les formes légales de la commande wm sont:

wm aspect fenêtre ?minNumer minDenom maxNumer maxDenom?
  Si minNumer, minDenom, maxNumer, et maxDenom sont toutes spécifiées, alors elles seront transmises au gestionnaire de fenêtres et le gestionnaire de fenêtres les utilisera pour mettre en place une étendue de ratios d'aspect acceptables pour fenêtre. Le ratio d'aspect de fenêtre (largeur/longueur) sera compris entre minNumer/minDenom et maxNumer/maxDenom. Si minNumer etc. sont tous spécifiés comme des chaînes vides, alors toutes les restrictions de ratio d'aspect existantes sont enlevées. Si minNumer etc. sont spécifiées, alors la commande retourne une chaîne vide. Autrement, elle retourne une liste Tcl contenant quatre éléments, qui sont les valeurs courantes de minNumer, minDenom, maxNumer, et maxDenom (si aucunes restrictions d'aspect ne sont effectives, alors une chaîne vide est retournée).

wm client fenêtre ?NOM?
  Si NOM est spécifié, cette commande stocke NOM (qui doit être le nom de la machine sur laquelle l'application s'exécute) dans la propriété WM_CLIENT_MACHINE de la fenêtre pour une utilisation par le gestionnaire de fenêtres ou le gestionnaire de session. La commande retourne une chaîne vide dans ce cas. Si NOM n'est pas spécifié, la commande retourne le dernier nom fixé par une commande wm client pour fenêtre. Si NOM est spécifié comme chaîne vide, la commande efface la propriété WM_CLIENT_MACHINE de fenêtre.

wm colormapwindows fenêtre ?windowList?
  cette commande est utilisée pour manipuler la propriété WM_COLORMAP_WINDOWS, qui fournit des informations au gestionnaire de fenêtres au sujet des fenêtres qui ont des colormaps (cartes des couleurs N.D.T.) privées. Si windowList n'est pas spécifié, la commande retourne une liste dont les éléments sont les noms des fenêtres dans la propriété WM_COLORMAP_WINDOWS. Si windowList est spécifiée, elle consiste en une liste de nom de chemins de fenêtres; la commande écrase la propriété WM_COLORMAP_WINDOWS avec les fenêtres données et retourne une chaîne vide. La propriété WM_COLORMAP_WINDOWS doit normalement contenir une liste des fenêtres contenues dans fenêtre dont les palettes diffèrent de celles de leurs parents. L'ordre des fenêtres dans la propriété indique un ordre de priorité: le gestionnaire de fenêtres tentera d'installer autant de cartes de couleurs que possible en partant du début de cette liste quand fenêtre obtient le focus. Si fenêtre n'est pas inclue parmi les fenêtres de windowList, Tk l'ajoute implicitement à la fin de la propriété WM_COLORMAP_WINDOWS, ainsi sa colormap est celle de priorité la plus basse. Si wm colormapwindows n'est pas appelée, Tk positionnera automatiquement la propriété de chaque fenêtre top-level à toutes les fenêtres internes dont les palettes diffèrent de celle de leurs parents, suivi par la top-level elle-même; l'ordre des fenêtres internes est indéfini. Voir la documentation ICCCM pour une plus ample information sur la propriété WM_COLORMAP_WINDOWS.

wm command fenêtre ?valeur?
  Si valeur est spécifiée, cette commande stocke valeur dans la propriété WM_COMMAND de fenêtre pour utilisation par le gestionnaire de fenêtres ou le gestionnaire de session et retourne une chaîne vide. Value doit avoir une structure de liste correcte; les éléments doivent contenir les mots de la commande utilisée pour appeler l'application. Si valeur n'est pas spécifiée alors la commande retourne la dernière valeur fixée par une commande wm command pour fenêtre. Si valeur est spécifiée comme une chaîne vide, la commande efface la propriété WM_COMMAND de fenêtre.

wm deiconify fenêtre
  Prépare fenêtre à être affichée normalement (non-iconifiée). Ceci est réalisé en "mappant" la fenêtre. Si la fenêtre n'a jamais été "mappée" alors cette commande ne mappera pas la fenêtre, mais elle s'assurera de l'affichage de la fenêtre quand elle est mappée pour la première fois. Sous Windows, une fenêtre "déiconifiée" sera aussi agrandie et obtiendra le focus (elle deviendra la fenêtre active). Retourne une chaîne vide.

wm focusmodel fenêtre ?active|passive?
  Si active ou passive est indiqué comme argument optionnel à la commande, alors il indique le modèle de focus de fenêtre. Dans ce cas la commande retourne une chaîne vide. Si aucun argument supplémentaire n'est fourni, alors la commande retourne le modèle courant de focus de fenêtre. Un modèle de focus active signifie que fenêtre réclamera le focus d'entrée pour elle ou ses descendants, même quand le focus est actuellement dans une autre application. Passive signifie que fenêtre ne réclamera pas le focus: le gestionnaire de fenêtres le lui donnera au moment approprié. Néanmoins, une fois le focus donné à fenêtre ou à un de ses descendants, l'application pourra réassigner le focus parmi les descendants de fenêtre. Le modèle de focus est par défaut de passive, et la commande Tk focus le suppose ainsi.

wm frame fenêtre
  Si fenêtre a été incluse par le gestionnaire de fenêtres dans un cadre, la commande retourne l'identificateur de fenêtres pécifique à la plateforme du cadre qui contient fenêtre (la fenêtre dont le parent est la racine ou la racine virtuelle). Si fenêtre n'a pas été incluse par le gestionnaire de fenêtres alors la commande retourne l'identificateur de fenêtres pécifique à la plateforme de fenêtre.

wm geometry fenêtre ?newGeometry?
  Si newGeometry est spécifié, alors la géométrie de fenêtre est modifiée et une chaîne vide est retournée. Autrement la geometrie courantd de fenêtre est retournée (qui est la geometrie la plus récente spécifiée soit par un dimensionnement manuel ou une commande wm geometry ). NewGeometry a la forme=width x height±x±y, où chacun de =, width x height, ou ±x±y peut être omis. Width et height sont des entiers positifs indiquant les dimensions désirées de fenêtre. Si fenêtre est une grille (voir GESTION DE LA GEOMETRIE EN GRILLE ci-dessous) alors les dimensions sont spécifiées en unités de grille; autrement ils sont spécifiés en pixels. X et y indiquent l'emplacement désiré de fenêtre sur l'écran, en pixels. Si x est précédé de +, il indique le nombre de pixels entre le coté gauche de l'écran et le coté gauche de la bordure de fenêtre; si précédé de - alors x il indique le nombre de pixels entre le coté droit de l'écran et le coté droit de la bordure defenêtre's. Si y est précédé de + alors il indique le nombre de pixels entre le haut de l'écran et le haut de la bordure de fenêtre; si y est précédé de - alors il indique le nombre de pixels entre le bas de la bordure defenêtre et le bas de l'écran. Si newGeometry est spécifié comme une chaîne vide alors les géometries existantes définies par l'utilisateur pour fenêtre sont effacées, et la fenêtre reviendra à la taille demandée en interne par ses widgets.

wm grid fenêtre ?baseWidth baseHeight widthInc heightInc?
  cette commande indique que fenêtre doit être gérée comme une grille. Elle indique également le rapport entre unités de grille et unités en pixels. BaseWidth et baseHeight spécifient le nombre d'unités de grille correspondant aux dimensions en pixels demandées en interne par fenêtre en utilisant Tk_GeometryRequest. WidthInc et heightInc spécifient le nombre de pixels dans chaque unité de grille horizontale et verticale. Ces quatre valeurs déterminent une étendue de tailles acceptables pour fenêtre, correspondant à des hauteurs et largeur basées grille qui sont des entiers non-négatifs. Tk transmettra cette information au gestionnaire de fenêtres; pendant un redimensionnement manuel, le gestionnaire de fenêtres réduira la taille de la fenêtre dans une mesure acceptable. De plus, pendant un redimensionnement manuel le gestionnaire de fenêtres affichera la taille courante de la fenêtre en termes d'unités de grille plutot que de pixels. Si baseWidth etc. sont tous spécifiés comme des chaîne vides, alors fenêtre ne sera plus gérée comme une grille. Si baseWidth etc. sont spécifiés alors la valeur de retour est une chaîne vide. Autrement la valeur de retour est une liste Tcl contenant quatre éléments correspondant aux baseWidth, baseHeight, widthInc, et heightInc courants; si fenêtre n'est pas actuellement une grille, alors une chaîne vide est retournée. Note: cette commande est rarement nécessaire, car les fonctions de bibliothèque Tk_SetGrid et l'option setGrid donnent accès plus facilement aux même fonctionnalités.

wm group fenêtre ?pathName?
  Si pathName est spécifié, il indique le nom de chemin du leader du groupe de fenêtres. Le gestionnaire de fenêtres peut utiliser ceci, par exemple, por libérer les fenêtres d'un groupe quand le leader du groupe est iconifié. PathName peut être spécifié comme une chaîne vide pour enlever fenêtre de toute association. Si pathName est spécifié alors la commande retourne une chaîne vide; autrement elle retourne le nom de chemin du leader courant du groupe de fenêtre, ou une chaîne vide si fenêtre ne fait partie d'aucun groupe.

wm iconbitmap fenêtre ?bitmap?
  Si bitmap est spécifié, alors il désigne un bitmap d'une des formes standard acceptées par Tk (voir la page de man Tk_GetBitmap pour les détails). Ce bitmap est transmis au gestionnaire de fenêtres pour être affiché comme icône de fenêtre, et la commande retourne une chaîne vide. Si une chaîne vide est spécifié comme bitmap, alors toute icône courante est effacée de fenêtre. Si bitmap est spécifié alors la commande retourne une chaîne vide. Autrement elle retourne le nom de l'icône bitmap courante associés à fenêtre, ou une chaîne vide si fenêtre n'a pas d'icône bitmap. Sous Windows, un flag supplémentaire est supporté: wm iconbitmap fenêtre ?-default? ?image?. Si le flag -default est indiqué, l'icône est appliquée à toutes les fenêtres toplevel (existantes et futures) auquelles aucune autre icône spécifique n'a déjà été appliquée. En plus des types d'image bitmap, tout fichier contenant une icône Windows valide est également accepté (généralement des fichiers.ico ou .icr). Tcl testera en premier si les fichiers contiennent une icône, et si ceci échoue, recherchera un bitmap.

wm iconify fenêtre
  Prépare fenêtre à être iconifiée. Si fenêtre n'a pas été encore appelée, cette commande la préparera a être affichée en icône quand elle sera éventuellement appelée.

wm iconmask fenêtre ?bitmap?
  Si bitmap est spécifié, alors il désigne un bitmap d'une des formes standard acceptées par Tk((voir la page de man Tk_GetBitmap pour les détails). Ce bitmap est transmis au gestionnaire de fenêtres à utiliser comme masque en conjonction avec l'option iconbitmap: la où le masque est à zéro aucune icône ne sera affichée; la où il est à un, les bits de l'icône bitmap seront affichés. Si une chaîne vide est spécifiée pour bitmap alors tout masque d'icône courant est effacé de fenêtre (ceci est équivalent à la spécification d'un bitmap composé entièrement de uns). Si bitmap est spécifié alors la commande retourne une chaîne vide. Autrement elle retourne le nom du masque d'icône courant associé à fenêtre, ou une chaîne vide si aucun masque n'est effectif.

wm iconname fenêtre ?newName?
  Si newName est spécifié, alors il est transmis au gestionnaire de fenêtre; le gestionnaire de fenêtres affichera newName dans l'icône associée à fenêtre. Dans ce cas une chaîne vide est retournée comme résultat. Si newName n'est pas spécifié alors la commande retourne le nom courant de l'icône de fenêtre, ou une chaîne vide si aucun nom d'icône n'a été spécifié (dans ce cas le gestionnaire de fenêtres affichera normalement le titre de la fenêtre, comme spécifié avec la commande wm title).

wm iconposition fenêtre ?x y?
  Si x et y sont spécifiés, ils sont transmis au gestionnaire de fenêtres pour positionner l'icône de fenêtre. Dans ce cas une chaîne vide est retournée. Si x et y sont spécifiés comme des chaînes vides alors toutes les coordonnées existantes sont effacées. Si ni x ni y ne sont spécifiées, alors la commande retourne une liste Tcl contenant deux valeurs, qui sont les coordonnées de l'icône (si acunes coordonnées ne sont effectives alors une chaîne vide est retournée).

wm iconwindow fenêtre ?pathName?
  Si pathName est spécifié, il est le nom de chemin d'une fenêtre a utiliser comme icône pour fenêtre: quand fenêtre est iconifiée alors pathName sera utilisée comme icône, et quand fenêtre est déiconifiée alors pathName sera cachée. Si pathName est spécifié comme une chaîne vide alors toutes les association existantes icône-fenêtre de fenêtre seront effacées. Si l'argument pathName est spécifié alors une chaîne vide est retournée. Autrement la commande retourne le nom de chemin de l'icône courante pour fenêtre, ou une chaîne vide s'il n'y a pas d'icône actuellement spécifiée pour fenêtre. Les évènements Bouton sont désactivés pour fenêtre tant qu'elle est iconifiée; ceci est nécessaire de manière à permettre au gestionnaire de fenêtres de posséder ces évènements. Note: tous les gestionnaire de fenêtres ne supportent pas la notion de fenêtre icône.

wm maxsize fenêtre ?largeur hauteur?
  Si largeur et hauteur sont spécifiées, elle donnent les dimensions maximum autorisées de fenêtre. Pour les fenêtres grilles, les dimensions sont spécifiées en unités de grille; autrement elles sont spécifiées en pixels. Le gestionnaire de fenêtres restreindra les dimensions de la fenêtre à une valeur inférieure ou égale à largeur et hauteur. Si largeur et hauteur sont indiquées, alors la commande retourne une chaîne vide. Autrement elle retourne une liste Tcl de deux éléments, qui sont les largeur et hauteur maximum actuellement effectives. La taille maximum est par défaut de la taille de l'écran. Si le redimensionnement a été désactivé avec la commande wm resizable, cette commande n'a pas d'effet. Voir la section sur la gestion de la géometrie ci-dessous pour une plus ample information.

wm minsize fenêtre ?largeur hauteur?
  Si largeur et hauteur sont spécifiées, elles indiquent les dimensions minimum autorisées pour fenêtre. Pour les fenêtres grilles les dimensions sont spécifiées en unités de grille; autrement elles sont spécifiées en pixels. Le gestionnaire de fenêtres restreindra les dimensions de la fenêtre à une valeur supérieure à ou égale à largeur et hauteur. Si largeur et hauteur sont spécifiées, alors la commande retourne une chaîne vide. Autrement elle retourne une liste Tcl de deux éléments, qui sont les largeur et hauteur minimum actuellement effectives. La taille minimum est par défaut de un pixel dans chaque direction. Si le redimensionnement a été désactivée avec la commande wm resizable, alors cette commande n'a pas d'effet. Voir la section sur la gestion de la géometrie ci-dessous pour une plus ample information.

wm overrideredirect fenêtre ?boolean?
  Si boolean est spécifié, il doit avoir une forme booléenne correcte et le flag override-redirect de fenêtre est positionné à cette valeur. Si boolean n'est pas spécifié alors 1 ou 0 est retournée pour indiquer si oui ou non le flag override-redirect est actuellement activé pour fenêtre. Si vous positionnez le flag override-redirect d'une fenêtre, elle sera ignorée par le gestionnaire de fenêtres; entre autres, ceci signifie que la fenêtre ne sera pas incluse dans un cadre decoratif et que l'utilisateur ne sera pas capable de la manipuler en utilisant les mécanismes normaux du gestionnaire de fenêtres.

wm positionfrom fenêtre ?qui?
  Si qui est spécifié, ce doit être soit program ou user, ou une abréviation de l'un des deux. Ceci indique si la position courante de fenêtre a été demandée par le programme ou par l'utilisateur. De nombreux gestionnaire de fenêtress ignorent les positions initiales demandées par programme et demandent à l'utilisateur de positionner manuellement la fenêtre; si user est spécifié alors le gestionnaire de fenêtres devra positionner la fenêtre à l'emplacement choisi sans demander l'assistance de l'utilisateur. Si who est spécifié comme une chaîne vide, alors la position source courante est effacée. Si who est spécifié, alors la commande retourne une chaîne vide. Autrement elle retourne user ou program pour indiquer la source de la position courante de la fenêtre, ou une chaîne vide si aucune source n'a été déjà spécifiée. La plupart des gestionnaire de fenêtres interprètent ``pas de source'' comme équivalent à program. Tk positionnera automatiquement la source à user quand une commande wm geometry est appelée, à moins que la source ait été explicitement fixée à program.

wm protocol fenêtre ?NOM? ?commande?
  cette commande est utilisé pour gérer les protocoles de gestionnaire de fenêtres comme WM_DELETE_WINDOW. NOM est le nom d'un atome correspondant à un protocoles de gestionnaire de fenêtres, comme WM_DELETE_WINDOW ou WM_SAVE_YOURSELF ou WM_TAKE_FOCUS. Si à la fois NOM et commande sont spécifiés, alors commande est associée au protocole spécifié par NOM. NOM sera ajouté a la propriété WM_PROTOCOLS de fenêtre por signaler au gestionnaire de fenêtres que l'application a un gestionnaire de protocole pour NOM, et que commande sera appelée dans le futur chaque fois que le gestionnaire de fenêtres envoie un message au client de ce protocole. Dans ce cas la commande retourne une chaîne vide. Si NOM est spécifié mais que commande ne l'est pas, alors la commande courante pour NOM est retournée, ou une chaîne vide s'il n'y a pas de gestionnaire défini pour NOM. Si commande est spécifié comme une chaîne vide alors le gestionnaire courant pour NOM est effacé et il est enlevé de la propriété WM_PROTOCOLS pour fenêtre; une chaîne vide est retournée. Pour finir, si ni NOM ni commande ne sont spécifiés, la commande retourne une liste de tous les protocoles pour lesquelles des gestionnaires sont actuellement définis pour fenêtre.

  Tk definit toujours un gestionnaire de protocole pour WM_DELETE_WINDOW, même si vous n'en avez pas demandé un avec wm protocol. Si un message WM_DELETE_WINDOW se produit sans que vous ayez défini un gestionnaire, alors Tk gère le message en détruisant la fenêtre pour laquelle il a été reçu.

wm resizable fenêtre ?largeur hauteur?
  cette commande contrôle si oui ou non l'utilisateur peut de façon interactive redimensionner une fenêtre top-level. Si largeur et hauteur sont spécifiées, ils sont des valeurs booléennes qui détermine si les largeur et hauteur de fenêtre peuvent être modifiées par l'utilisateur. Dans ce cas la commande retourne une chaîne vide. Si largeur et hauteur sont omises alors la commande retourne une liste avec deux éléments 0/1 qui indiquent si les largeur et hauteur de fenêtre sont actuellement modifiables. Par défaut, les fenêtres sont redimensionnables dans les deux directions. Si le redimensionnement est désactivé, alors la taille de la fenêtre sera la taille à partir du plus recent redimensionnement ou commande wm geometry. S'il n'y a pas eu de telles opération alors la taille naturelle de la fenêtre sera utilisé.

wm sizefrom fenêtre ?who?
  Si who est spécifié, ce doit être soit program soit user, ou une abréviation de l'un des deux. Ceci indique si la taille courant de fenêtre a été demandée par le programme ou par l'utilisateur. Certains gestionnaire de fenêtres ignorent les tailles demandées par programme et demandent à l'utilisateur de dimensionner manuellement la fenêtre; si user est spécifié alors le gestionnaire de fenêtres donnera à la fenêtre sa taille demandé sans l'intervention de l'utilisateur. Si who est spécifié comme une chaîne vide, alors la source de la taille courante est effacée. Si who est spécifié, alors la commande retourne une chaîne vide. Autrement elle retourne user ou program pour indiquer la source de la taille courante de la fenêtre, ou une chaîne vide si aucune source n'a été déjà spécifiée. La plupart des gestionnaire de fenêtres interprètent ``no source'' comme équivalent à program.

wm state fenêtre ?newstate?
  Si newstate est spécifié, la fenêtre sera positionnée au nouvel état, autrement elle retourne l'état courant de fenêtre: soit normal, iconic, withdrawn, icon, ou (Windows seulement) zoomed. La difference entre iconic et icon est que iconic se réfère à une fenêtre qui a été iconifiée (ex., avec la commande wm iconify ) alors que icon se réfère à une fenêtre dont le seul usage est de servir d'icône à une autre fenêtre (via la commande wm iconwindow ). L'état icon ne peut être positionné.

wm title fenêtre ?chaîne?
  Si chaîne est spécifiée, alors elle sera transmise au gestionnaire de fenêtre comme titre de fenêtre (le gestionnaire de fenêtres devra afficher cette chaîne dans la barre de titre de fenêtre). Dans ce cas la commande retourne une chaîne vide. Si chaîne n'est pas spécifiée alors la commande retourne le titre courant de fenêtre. Le titre d'une fenêtre est par défaut son nom.

wm transient fenêtre ?maître?
  Si maître est spécifié, alors le gestionnaire de fenêtres est informé que fenêtre est une fenêtre transitoire (ex. un menu déroulant) découlant de maître (où maître est le nom de chemin d'une fenêtre top-level). Certains gestionnaire de fenêtres utiliseront cette information pour gérer fenêtre spécialement. Si maître est spécifié comme une chaîne vide alors fenêtre est marqué comme n'étant plus une fenêtre transitoire. Si maître est spécifié, alors la commande retourne une chaîne vide. Autrement la commande retourne le nom de chemin du maître courant de fenêtre, ou une chaîne vide si fenêtre n'est pas actuellement une fenêtre transitoire.

wm withdraw fenêtre
  Prépare fenêtre à être retirée de l'écran. Ceci libère la fenêtre. Si la fenêtre n'a jamais été appelée, alors cette commande appelle la fenêtre dans l'état withdrawn. Aucun gestionnaire de fenêtres ne semble savoir comment gérer les fenêtres qui sont appelées dans l'état withdrawn. Note: il est parfois nécessaire de retirer et de rappeler une fenêtre (ex. avec wm deiconify) pour signaler au gestionnaire de fenêtres de changer des attributs de fenêtre comme le groupe.

### GESTION DE LA GEOMETRIE

Par défaut une fenêtre top-level apparait à l'écran sous sa taille naturelle, qui est celle determinée en interne par ses widgets et son gestionnaire de géométrie. Si la taille naturelle d'une fenêtre top-level change, alors la taille de la fenêtre change en correspondance. Il peut être donné à une fenêtre top-level une taille autre que naturelle de deux façons. D'abord, l'utilisateur peut redimensionner la fenêtre manuellement en utilisant les facilités du gestionnaire de fenêtres, comme les poignées. Ensuite, l'application peut demander une taille particulière pour une fenêtre top-level en utilisant la commande wm geometry. Ces deux cas sont gérés de même par Tk; dans les deux cas, la taille demandée surcharge la taille naturelle. Vous pouvez rendre à la fenêtre sa taille naturelle par l'appel de wm geometry avec une chaîne geometry vide.

Normalement une fenêtre top-level peut avoir n'imprte quelle taille de un pixel dans chaque dimension jusqu'à la taille de l'écran. Néanmoins, vous pouvez utiliser les commandes wm minsize et wm maxsize pour limiter l'étendue des tailles autorisées. L'étendue définie par wm minsize et wm maxsize s'applique à toutes les formes de redimensionnement, incluant la taille naturelle de la fenêtre aussi bien que les modifications manuelles resizes et la commande wm geometry. Vous pouvez aussi utiliser la commande wm resizable pour désactiver complètement le redimensionnement interactif dans l'une ou l'autre direction.

### GESTION DE LA GEOMETRIE EN GRILLE

La gestion de géométrie en grille se produit quand un des widgets d'une application supporte une étendue de tailles utiles. Ceci se produit, par exemple, dans un éditeur de texte où les scrollbars, menus, et autres accéssoires sont de taille fixe alors que le widget d'edition peut supporter n'importe quel nombre de lignes de texte ou de caractères par ligne. Dans ce cas, il est généralement desirable de laisser l'utilisateur specifier le nombre de lignes ou de caractères-par-ligne, soit avec la commande wm geometry ou en redimensionnant interactivement la fenêtre. Dans le cas de texte, et d'autre case interessants également, seules certaines tailles de la fenêtre ont un sens, comme les nombres de lignes et de caractères-par-ligne; les tailles arbitraire en pixels ne sont pas utiles.

La gestion de géométrie en grille fournit un support pour ce type d'application. Tk (et le gestionnaire de fenêtres) suppose qu'il y a une grille à l'intérieur de l'application et que l'application doit être redimensionnée en termes d' unités de grille plutot que de pixels. La gestion de géométrie en grille est généralement appelée en activant l'option setGrid pour un widget; elle peut être aussi appelée avec la commande wm grid ou en applelant Tk_SetGrid. Dans chacune de ces chaque approches le widget particulier (ou parfois le code dans l'application entière) indique le rapport entre les tailles de grille pour la fenêtre et les tailles en pixels. Pour revenir à une gestion de géométrie non-grille, appelez wm grid avec comme argument une chaîne vide.

Quand la gestion de géométrie en grille est activée alors toutes les dimensions spécifiés dans les commandes wm minsize, wm maxsize, et wm geometry sont traitées en unités de grille plutot qu'en unitésde pixels. Le redimensionnement interactif est égalament géré en nombre d'unités de grille plutot que de pixels.

### BUGS

La plupart des gestionnaires de fenêtres semblent avoir des bugs qui affectent l'opération de la commande wm. Par exemple, certains changements ne prendront pas effet si la fenêtre est déjà active: la fenêtre devra être cachée puis réaffichée de manière à rendre le changement visible.

Sous Windows wm iconbitmap n'a pas d'effet quand on lui transmet un bitmap: seuls les fichiers icônes fonctionnent correctement pour l'instant.

### MOTS-CLES

aspect ratio, deiconify, focus modèle, geometry, grid, group, icon, iconify, increments, position, size, title, top-level fenêtre, unités, gestionnaire de fenêtres

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

Copyright © 2003 - Le Portail Tcl/Tk Francophone.