perl/tk : mise à jour du curseur
Le
Manuel Pégourié-Gonnard
Bonjour,
Je débute en Perl/Tk, et suis confronté à un problème qui est sans doute
très basique : j'ai un programme qui, avant de lancer un traitement un
peu long, fait
$main->configure(-cursor=>'watch');
où $main est la fenêtre principale. Bizarrement, le curseur ne change
pas avant que le traitement long soit terminé et que la fenêtre de
résultat s'affiche, ce qui est donc parfaitement inutile.
J'imagine qu'il doit falloir faire quelque chose pour que le changement
de curseur soit pris en compte, genre re-dessiner la fenêtre principale,
mais je n'arrive pas à trouver ça rapidement.
Je suis sûr que pour plusieurs contributeurs ici c'est évident :-)
--
Manuel Pégourié-Gonnard Institut de mathématiques de Jussieu
http://weblog.elzevir.fr/ http://people.math.jussieu.fr/~mpg/
Je débute en Perl/Tk, et suis confronté à un problème qui est sans doute
très basique : j'ai un programme qui, avant de lancer un traitement un
peu long, fait
$main->configure(-cursor=>'watch');
où $main est la fenêtre principale. Bizarrement, le curseur ne change
pas avant que le traitement long soit terminé et que la fenêtre de
résultat s'affiche, ce qui est donc parfaitement inutile.
J'imagine qu'il doit falloir faire quelque chose pour que le changement
de curseur soit pris en compte, genre re-dessiner la fenêtre principale,
mais je n'arrive pas à trouver ça rapidement.
Je suis sûr que pour plusieurs contributeurs ici c'est évident :-)
--
Manuel Pégourié-Gonnard Institut de mathématiques de Jussieu
http://weblog.elzevir.fr/ http://people.math.jussieu.fr/~mpg/

Poser une question


Manuel Pégourié-Gonnard
Pour faire cela, il vaut mieux utiliser les méthodes 'Busy' et 'Unbusy'
de Tk::Widget. On peut spécifier le curseur à utiliser mais c'est
'watch' par défaut.
--
Paul Gaborit - Perl en français -
Merci pour ton conseil, c'est donc ce que j'utilise maintenant. Du coup,
ça m'a aussi fait penser à lire un peu perldoc Tk::Widget (j'aurais du y
penser avant, mais bon). J'y ai trouvé l'option -recurse qui, expérience
faite, résoud mon problème initial. Je ne suis pas sûr de bien
comprendre pourquoi, en fait, mais comme il paraît que la nuit porte
conseil, j'y réfléchirai demain :-)
--
Manuel Pégourié-Gonnard Institut de mathématiques de Jussieu
http://weblog.elzevir.fr/ http://people.math.jussieu.fr/~mpg/
Manuel Pégourié-Gonnard
C'est un petit défaut des modules Tk : la documentation est un peu
fragmentée (mais elle est quand même complète) si bien qu'on ne trouve
pas toujours tout de suite ce qu'on cherche.
Un simple appel à 'update' (après 'Busy' ou 'configure') est sans doute
suffisant...
--
Paul Gaborit - Perl en français -