- NOM
- tk_getOpenFile, tk_getSaveFile - boite de dialogue de selection de fichier à ouvrir ou enregistrer.
- SYNTAXE
- tk_getOpenFile ?option valeur ...?
- tk_getSaveFile ?option valeur ...?
- DESCRIPTION
- -defaultextension extension
- -filetypes filePatternList
- -initialdir répertoire
- -initialfile filename
- -multiple
- -message
- -parent fenêtre
- -title titleString
- SPECIFICATION DE TYPES DE FICHIERS
- SPECIFICATION D'EXTENSIONS
- EXEMPLE
- VOIR EGALEMENT
- MOTS-CLES
tk_getOpenFile, tk_getSaveFile - boite de dialogue de selection de fichier à ouvrir ou enregistrer.
tk_getOpenFile ?option valeur ...?
tk_getSaveFile ?option valeur ...?
Les procédures tk_getOpenFile et tk_getSaveFile créent une boite de dialogue de selection de fichier à ouvrir ou enregistrer. La commande
tk_getOpenFile est généralement associée à la commande Open
dans le menu Fichier. Son usage est de permettre à l'utilisateur de choisir un
fichier existant seulement. Si l'utilisateur entre un fichier non existant, la
boite de dialogue affiche un message d'erreur et demande à l'utilisateur de fournir
une autre sélection. Si une application permet à l'utilisateur de créer
des nouveaux fichiers, ce doit être fait en créant une commande de menu Nouveau séparée.
La commande tk_getSaveFile est généralement associée à la commande Enregistrer sous
dans le menu Fichier . Si l'utilisateur saisit un fichier qui
existe déjà, la boite de dialogue interroge l'utilisateur pour confirmation
de l'écrasement éventuel du fichier existant.
Les paires option-valeur suivantes sont possibles comme arguments de ligne de commande
à ces deux commandes:
- -defaultextension extension
-
Spécifie une chaîne qui sera ajoutée au nom de fichier si l'utilisateur
saisit un nom de fichier sans extension. La valeur par défaut est la chaîne vide, qui signifie qu'aucune extension ne sera ajoutée au nom de fichier. Cette option est ignorée sur Macintosh, qui n'exige pas d'extensions aux noms de fichier.
- -filetypes filePatternList
-
Si une liste déroulante Type de fichiers existe dans la boite de dialogue sur la plateforme particulière, cette option donne les type de fichierss dans cette liste déroulante. Quand
l'utilisateur choisit un type de fichiers dans la liste déroulante, seulement les fichiers de ce type
sont listés. Si cette option n'est pas spécifiée, ou si c'est une
liste vide, ou si la liste déroulante Type de fichiers n'est pas supportée sur cette plateforme
particulière alors tous les fichiers sont listés indépendemment de leurs
types. Voir la section SPECIFICATION DE TYPES DE FICHIERS ci-dessous pour une
étude du contenu de filePatternList.
- -initialdir répertoire
-
Spécifie que les fichiers de répertoire doivent être affichés
quand la boite de dialogue apparaît. Si ce paramètre n'est pas spécifié, alors
les fichiers du répertoire courant sont affichés. Si le
paramètre indique un chemin relatif, la valeur de retour convertira le chemin
relatif en un chemin absolu. Cette option ne fonctionne pas toujours sur
Macintosh. Ceci n'est pas un bug. D'autre part, les General Controls
du panneau de configuration du Mac permettent à l'utilisateur de surcharger
le répertoire par défaut de l'application.
- -initialfile filename
-
Spécifie un nom de fichier à afficher dans la boite de dialogue quand elle apparaît. Cette
option est ignorée sur Macintosh.
- -multiple
-
Permet à l'utilisateur de choisir de multiples fichiers dans la boite de dialogue Ouvrir.
Sur Macintosh, ceci est disponible seulement quand les Navigation Services sont
installés.
- -message
-
Spécifie a message à inclure dans la client area de la boite de dialogue.
Ceci est seulement disponible sur Macintosh, et seulement quand les Navigation
Services sont installés.
- -parent fenêtre
-
Fait de fenêtre le parent logique de la boite de dialogue. La boite de dialogue est affichée par dessus sa fenêtre parent.
- -title titleString
-
Spécifie une chaîne à afficher comme titre de la boite de dialogue. Si cette
option n'est pas spécifiée, alors un titre par défaut est affiché.
Si l'utilisateur sélectionne un fichier, tk_getOpenFile et
tk_getSaveFile retournent le nom de chemin complet de ce fichier. Si l'utilisateur
annule l'opération, les deux commandes retournent une chaîne vide.
La valeur filePatternList indiquée par l'option -filetypes
est une liste de modèles de fichiers. Chaque modèle de fichier est une liste de la
forme:
typeName {extension ?extension ...?} ?{macType ?macType ...?}?
typeName est le nom du type de fichier décrit par le modèle de fichier et est la chaîne qui apparaît dans la liste déroulante types de fichiers
. extension est l'extension de fichier de ce modèle de fichier.
macType est un type de fichier Macintosh de quatre-caractère. La liste de
macTypes est optionnelle et peut être omise pour les applications qui ne doivent pas
s'executer sur la plateforme Macintosh.
Plusieurs modèles de fichiers peuvent avoir les même typeName, auquel cas
ils se refèrent au même type de fichier et partagent la même entrée dans la
liste déroulante. Quand l'utilisateur sélectionne une entrée dans la liste déroulante, tous les fichiers
qui correspondent à au moins un des modèles de fichiers présent dans cette entrée sont listés. Usuellement, chaque modèle de fichier corresponds à un type de fichier
distinct. L'usage de plus d'un modèle de fichier pour un
type de fichier est nécessaire seulement sur la plateforme Macintosh.
Sur la plateforme Macintosh, un fichier correspond à un modèle de fichier si son nom
correspond à au moins de une des extension(s) ET qu'il appartient à au moins un des macType(s) du
modèle de fichier. Par exemple, le modèle de fichier C Source Files dans le code exemple correspond aux fichiers qui ont une extension .c ET
appartiennent au macType TEXT. Pour utiliser la règle OU à la place,
vous pouvez utiliser deux modèles de fichiers, un avec seulement les extensions et
l'autre avec seulement le macType. Le type de fichier GIF Files
dans le code exemple correspond aux fichiers qui SOIT ont une extension .gif
OU appartiennent au macType GIFF.
Sur les plateformes Unix et Windows, un fichier correspond à un modèle de fichier
si son nom correspond à au moins une des extension(s) du modèle de fichier. Les macTypes sont ignoré.
Sur les plateformes Unix et Macintosh, les extensions sont comparées en utilisant
un modèle glob-style. Sur les the plateformes Windows, les extensions sont
comparées par le système d'exploitation. Les types d'extensions possibles
sont: (1) l'extension spéciale * correspond à tous les fichiers;
(2) l'extension spéciale "" correspond à tous les fichiers
qui n'ont pas d'extension (c.a.d., le nom de fichier ne contient pas de
caractère d'arrêt); (3) toute chaîne caractère qui ne contient pas de
caractères joker (* et ?).
A cause des différentes règles de correspondance sur les diverses plateformes,
pour s'assurer de la portabilité, les caractères joker ne sont pas autorisés dans les
extensions, excepté dans l'extension spéciale *. Les extensions
sans caractère d'arrêt (ex, ~) sont autorisées mais ne fonctionneront pas
sur toutes les plateformes.
set types {
{{Text Files} {.txt} }
{{TCL Scripts} {.tcl} }
{{C Source Files} {.c} TEXT}
{{GIF Files} {.gif} }
{{GIF Files} {} GIFF}
{{All Files} * }
}
set filename [tk_getOpenFile -filetypes $types]
if {$filename != ""} {
# Ouvre le fichier...
}
tk_chooseDirectory
file selection dialog
Copyright © 1996 Sun Microsystems, Inc.
Copyright © 1995-1997 Roger E. Critchlow Jr.
Copyright © 2003 - Le Portail Tcl/Tk Francophone.