J'utilise un widget Tk::Text =E0 l'int=E9rieur d'un Tk::Scrolled, ainsi
que la m=E9thode windowcreate pour ins=E9rer des widgets de type label et
entry pour r=E9cup=E9rer des param=E8tres.
Cependant mon Tk::Text sert aussi =E0 afficher du texte. En fait, mon
Tk::Text est multifonction est lorsque je supprime toutes les lignes
pour y ins=E9rer mon texte, tous les objets label et entry
pr=E9c=E9demment cr=E9=E9s sont perdus. Il faut donc lorsque l'on veut
modifier les param=E8tres recr=E9er =E0 chaque fois ces objets. Y aurait
il une m=E9thode pour ne pas perdre ces objets ? Bien s=FBr toujours en
utilisant mon Tk::Text et non en le dupliquant ?
En effet, la recr=E9ation des objets est palpable m=EAme si cela prend
moins de 2s.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Paul Gaborit
À (at) 27 Sep 2005 07:13:53 -0700, "Srand" écrivait (wrote):
J'utilise un widget Tk::Text à l'intérieur d'un Tk::Scrolled, ainsi que la méthode windowcreate pour insérer des widgets de type label et entry pour récupérer des paramètres.
Cependant mon Tk::Text sert aussi à afficher du texte. En fait, mon Tk::Text est multifonction est lorsque je supprime toutes les lignes pour y insérer mon texte, tous les objets label et entry précédemment créés sont perdus. Il faut donc lorsque l'on veut modifier les paramètres recréer à chaque fois ces objets. Y aurait il une méthode pour ne pas perdre ces objets ? Bien sûr toujours en utilisant mon Tk::Text et non en le dupliquant ?
Certainement en utilisant des tags et des marks pour retrouver les différentes catégories d'objets... Je ne sais plus si les images et les widgets sont considérés comme des annotations de type tags ou marks (je pencherai plutôt pour ce dernier cas). Le plus simple pour le retrouver est de demander un 'dump' (avec l'otion '-all') du contenu pour voir à quoi ils sont rattachés.
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
J'utilise un widget Tk::Text à l'intérieur d'un Tk::Scrolled, ainsi
que la méthode windowcreate pour insérer des widgets de type label et
entry pour récupérer des paramètres.
Cependant mon Tk::Text sert aussi à afficher du texte. En fait, mon
Tk::Text est multifonction est lorsque je supprime toutes les lignes
pour y insérer mon texte, tous les objets label et entry
précédemment créés sont perdus. Il faut donc lorsque l'on veut
modifier les paramètres recréer à chaque fois ces objets. Y aurait
il une méthode pour ne pas perdre ces objets ? Bien sûr toujours en
utilisant mon Tk::Text et non en le dupliquant ?
Certainement en utilisant des tags et des marks pour retrouver les
différentes catégories d'objets... Je ne sais plus si les images et
les widgets sont considérés comme des annotations de type tags ou
marks (je pencherai plutôt pour ce dernier cas). Le plus simple pour
le retrouver est de demander un 'dump' (avec l'otion '-all') du
contenu pour voir à quoi ils sont rattachés.
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>
À (at) 27 Sep 2005 07:13:53 -0700, "Srand" écrivait (wrote):
J'utilise un widget Tk::Text à l'intérieur d'un Tk::Scrolled, ainsi que la méthode windowcreate pour insérer des widgets de type label et entry pour récupérer des paramètres.
Cependant mon Tk::Text sert aussi à afficher du texte. En fait, mon Tk::Text est multifonction est lorsque je supprime toutes les lignes pour y insérer mon texte, tous les objets label et entry précédemment créés sont perdus. Il faut donc lorsque l'on veut modifier les paramètres recréer à chaque fois ces objets. Y aurait il une méthode pour ne pas perdre ces objets ? Bien sûr toujours en utilisant mon Tk::Text et non en le dupliquant ?
Certainement en utilisant des tags et des marks pour retrouver les différentes catégories d'objets... Je ne sais plus si les images et les widgets sont considérés comme des annotations de type tags ou marks (je pencherai plutôt pour ce dernier cas). Le plus simple pour le retrouver est de demander un 'dump' (avec l'otion '-all') du contenu pour voir à quoi ils sont rattachés.
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
Scetbon Cyril
Paul Gaborit wrote:
À (at) 27 Sep 2005 07:13:53 -0700, "Srand" écrivait (wrote):
J'utilise un widget Tk::Text à l'intérieur d'un Tk::Scrolled, ainsi que la méthode windowcreate pour insérer des widgets de type label et entry pour récupérer des paramètres.
Cependant mon Tk::Text sert aussi à afficher du texte. En fait, mon Tk::Text est multifonction est lorsque je supprime toutes les lignes pour y insérer mon texte, tous les objets label et entry précédemment créés sont perdus. Il faut donc lorsque l'on veut modifier les paramètres recréer à chaque fois ces objets. Y aurait il une méthode pour ne pas perdre ces objets ? Bien sûr toujours en utilisant mon Tk::Text et non en le dupliquant ?
Certainement en utilisant des tags et des marks pour retrouver les différentes catégories d'objets... Je ne sais plus si les images et les widgets sont considérés comme des annotations de type tags ou marks (je pencherai plutôt pour ce dernier cas). Le plus simple pour le retrouver est de demander un 'dump' (avec l'otion '-all') du contenu pour voir à quoi ils sont rattachés.
Le problème est que les objets sont détruits lorsque j'utilise la
fonction delete pour pouvoir afficher du texte seul.
J'utilise un widget Tk::Text à l'intérieur d'un Tk::Scrolled, ainsi
que la méthode windowcreate pour insérer des widgets de type label et
entry pour récupérer des paramètres.
Cependant mon Tk::Text sert aussi à afficher du texte. En fait, mon
Tk::Text est multifonction est lorsque je supprime toutes les lignes
pour y insérer mon texte, tous les objets label et entry
précédemment créés sont perdus. Il faut donc lorsque l'on veut
modifier les paramètres recréer à chaque fois ces objets. Y aurait
il une méthode pour ne pas perdre ces objets ? Bien sûr toujours en
utilisant mon Tk::Text et non en le dupliquant ?
Certainement en utilisant des tags et des marks pour retrouver les
différentes catégories d'objets... Je ne sais plus si les images et
les widgets sont considérés comme des annotations de type tags ou
marks (je pencherai plutôt pour ce dernier cas). Le plus simple pour
le retrouver est de demander un 'dump' (avec l'otion '-all') du
contenu pour voir à quoi ils sont rattachés.
Le problème est que les objets sont détruits lorsque j'utilise la
fonction delete pour pouvoir afficher du texte seul.
À (at) 27 Sep 2005 07:13:53 -0700, "Srand" écrivait (wrote):
J'utilise un widget Tk::Text à l'intérieur d'un Tk::Scrolled, ainsi que la méthode windowcreate pour insérer des widgets de type label et entry pour récupérer des paramètres.
Cependant mon Tk::Text sert aussi à afficher du texte. En fait, mon Tk::Text est multifonction est lorsque je supprime toutes les lignes pour y insérer mon texte, tous les objets label et entry précédemment créés sont perdus. Il faut donc lorsque l'on veut modifier les paramètres recréer à chaque fois ces objets. Y aurait il une méthode pour ne pas perdre ces objets ? Bien sûr toujours en utilisant mon Tk::Text et non en le dupliquant ?
Certainement en utilisant des tags et des marks pour retrouver les différentes catégories d'objets... Je ne sais plus si les images et les widgets sont considérés comme des annotations de type tags ou marks (je pencherai plutôt pour ce dernier cas). Le plus simple pour le retrouver est de demander un 'dump' (avec l'otion '-all') du contenu pour voir à quoi ils sont rattachés.
Le problème est que les objets sont détruits lorsque j'utilise la
fonction delete pour pouvoir afficher du texte seul.
Le problème est que les objets sont détruits lorsque j'utilise la fonction delete pour pouvoir afficher du texte seul.
Peut-être n'ai-je pas vraiment compris ce que vous vouliez faire... Une rapide description du besoin aiderait sûrement ;-)
En fait, vous aimeriez cacher des objets momentanément (pour afficher juste du texte) puis les faire réapparaître plus tard sans devoir les recréer... Je crois malheureusement que ce n'est pas possible.
Petit extrait de la doc de Tk::Text :
Each embedded window occupies one character's worth of index space in the text widget, and it may be referred to either by the name of its embedded window or by its position in the widget's index space. If the range of text containing the embedded window is deleted then the window is destroyed.
C'est cette dernière phrase qui semble montrer que ce n'est pas possible.
Ce qui est faisable par contre, c'est d'insérer un Frame dans un Scrolled. Et de placer dans ce Frame plusieurs Text avec des sous-éléments autres intercalées entre chaque Text. L'ensemble de ces sous-éléments (Text et autres) étant gérés par pack. Comme on peut faire entrer ou sortir un sous-élément d'un pack sans le détruire (le sous-élément), on peut peut-être faire quelque chose approchant ce que vous voulez faire...
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
Le problème est que les objets sont détruits lorsque j'utilise la
fonction delete pour pouvoir afficher du texte seul.
Peut-être n'ai-je pas vraiment compris ce que vous vouliez
faire... Une rapide description du besoin aiderait sûrement ;-)
En fait, vous aimeriez cacher des objets momentanément (pour afficher
juste du texte) puis les faire réapparaître plus tard sans devoir les
recréer... Je crois malheureusement que ce n'est pas possible.
Petit extrait de la doc de Tk::Text :
Each embedded window occupies one character's worth of index
space in the text widget, and it may be referred to either by the
name of its embedded window or by its position in the widget's
index space. If the range of text containing the embedded window
is deleted then the window is destroyed.
C'est cette dernière phrase qui semble montrer que ce n'est pas
possible.
Ce qui est faisable par contre, c'est d'insérer un Frame dans un
Scrolled. Et de placer dans ce Frame plusieurs Text avec des
sous-éléments autres intercalées entre chaque Text. L'ensemble de ces
sous-éléments (Text et autres) étant gérés par pack. Comme on peut
faire entrer ou sortir un sous-élément d'un pack sans le détruire (le
sous-élément), on peut peut-être faire quelque chose approchant ce que
vous voulez faire...
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>
Le problème est que les objets sont détruits lorsque j'utilise la fonction delete pour pouvoir afficher du texte seul.
Peut-être n'ai-je pas vraiment compris ce que vous vouliez faire... Une rapide description du besoin aiderait sûrement ;-)
En fait, vous aimeriez cacher des objets momentanément (pour afficher juste du texte) puis les faire réapparaître plus tard sans devoir les recréer... Je crois malheureusement que ce n'est pas possible.
Petit extrait de la doc de Tk::Text :
Each embedded window occupies one character's worth of index space in the text widget, and it may be referred to either by the name of its embedded window or by its position in the widget's index space. If the range of text containing the embedded window is deleted then the window is destroyed.
C'est cette dernière phrase qui semble montrer que ce n'est pas possible.
Ce qui est faisable par contre, c'est d'insérer un Frame dans un Scrolled. Et de placer dans ce Frame plusieurs Text avec des sous-éléments autres intercalées entre chaque Text. L'ensemble de ces sous-éléments (Text et autres) étant gérés par pack. Comme on peut faire entrer ou sortir un sous-élément d'un pack sans le détruire (le sous-élément), on peut peut-être faire quelque chose approchant ce que vous voulez faire...
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
Srand
c'est ce que je pensais. J'opte donc pour un notebook :-)
Merci pour ces infos.
c'est ce que je pensais. J'opte donc pour un notebook :-)