pack [entry .e -textvariable fichier]
set fichier [tk_getOpenFile]
Chez moi, à l'exécution tout semble marcher sauf que l'on ne peut pas
saisir de valeur dans l'entry (le curseur change bien d'aspect mais
aucun moyen d'y modifier le texte)... Ce serait la même chose avec un
widget text ... l'odre des lignes n'y change rien
En ajoutant avant ou après ces lignes la commande tk_messageBox -type
ok -message "Press me" ... miraculeusement l'entry redevient active
(au sens où l'on peut y taper du texte)
Suis sous Xp et la même chose se produit avec TCL 8.4.11 et 8.5.5...
Celà ce produit aussi chez vous ? Des avis éclairés sur ce sujet ?
je viens d'essayer le script
pack [entry .e -textvariable fichier]
set fichier [tk_getOpenFile]
c'est ok pour moi, j'arrive à modifier le nom du fichier sélectionné
en entrant dans l'entry.
Cordialement
Hubert
Lenny Debian TclTk 8.5
tk_getOpenFile créé une fenêtre modale : tant qu'elle existe, tu ne
devrais plus pouvoir accéder ou modifier ton entry. Une fois ton
fichier choisi dans tk_getOpenFile, tout doit rentrer dans l'ordre.
--
David Zolli
je me permets de compl�ter ce que dit Kroc.
Kroc a �crit :
> On 13 oct, 14:00, b83s <brs...@gmail.com> wrote:
>> Bonjour ... voici 2 lignes toutes simples
>>
>> pack [entry .e -textvariable fichier]
>> set fichier [tk_getOpenFile]
>
> tk_getOpenFile cr�� une fen�tre modale : tant qu'elle existe, tu ne
> devrais plus pouvoir acc�der ou modifier ton entry. Une fois ton
> fichier choisi dans tk_getOpenFile, tout doit rentrer dans l'ordre.
En fait, ce qui se passe, c'est que le widget entry est cr��, mais rien
n'arr�te le d�roulement du script qui alors cr�e la fameuse fen�tre
modale d'ouverture de fichier. Celle-ci est bloquante, puisqu'elle
attend que tu entres un nom de fichier (ce qu'on appelle modale).
Ne serais-tu pas en train de te tromper ? Pourquoi cr�er une zone de
saisie du nom de fichier (entry) pour tout de suite apr�s cr�er une
fen�tre de ... saisie du nom de fichier (tk_getOpenFile) ? Tu ne
voudrais pas plut�t ouvrir ce fichier pour en extraire le contenu ? Dans
ce cas, ce n'est pas la bonne commande.
>
> --
> David Zolli
Amicalement, Vincent Verdon
l'exemple que j'ai cité est juste ... un exemple ... qui ne sert pas à
grand chose, je l'admets mais il suffit à illustrer mon problème. Chez
moi, une fois avoir sélectionné un fichier avec tk_getOpen... la
fenetre tk_getOpen se ferme, le nom du fichier apparait dans
l'entry ... mais je ne peux pas modifier la valeur dans l'entry !
J'ai découvert ce souci sur une plus grosse application avec plusieurs
entry et fenêtres text. Avant de lancer cette appli je dois
sélectionner un fichier (qui déterminera le nombre d'entry à
afficher...) puis j'affiche l'interface ... Seuls les boutons,
radiobuttons et checkbuttons sont actifs sur cette interface; les
entry et text ne sont pas "actifs" (ils sont bien en "-state normal",
le curseur change de forme quand on est dessus, mais on ne peut rien
éditer). Je me suis aperçu qu'en ajoutant un dialogue tk_messageBox
dans le déroulement du programme que ce blocage était levé ...
Pourquoi ce blocage chez moi ? le mystère demeure entier puisqu'il ne
se produit pas chez vous ...
La parade est simple ... mais intellectuellement parlant ça ne me
plait pas !
Essaie voir de traquer où se balade ton focus en rajoutant ça au début
de ton code :
bind all <FocusIn> {puts "Focus à %W"}
--
David Zolli