Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1087 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  [Résolu][Perl/Gtk2] Récupérer les éléments d'un Gtk2::TreeView

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu][Perl/Gtk2] Récupérer les éléments d'un Gtk2::TreeView

n°987858
Elghinn42
Posté le 20-02-2005 à 20:20:52  profilanswer
 

Bonjour  :hello:  
 
Je suis en train de programmer une gui pour l'un de mes projets. Le programme est en perl, et j'utilise la librairie graphique Gtk2.
 
Pour les besoins du programme, j'utilise un objet de type Gtk2::TreeView avec une seule colonne, dont le nom est caché.
Cet objet me sert à stocker "graphiquement parlant" les éléments d'un liste. À l'aide d'un bouton et d'un champ texte, l'utilisateur peut ajouter un élément à l'objet Gtk2::TreeView. Jusqu'ici, je n'ai rencontré aucun problème.
 
Seulement voilà, à un moment donné, j'ai besoin de récupérer les éléments contenus dans le Gtk2::TreeView, et c'est la panique  :(  
Je n'ai pas trouvé le moyen d'accéder à ces élément.
 
Après plusieurs recherches infructueuses sur google, http://gtk2-perl.sourceforge.net/doc/pod/index.html et http://www.gtk-fr.org/, je n'ai rien trouvé. Peut-être ai-je mal cherché  :pfff:  
 
Si quelqu'un pouvait m'expliquer (ou me donner un lien avec une explication ou un exemple) comment récupérer les éléments contenus dans un Gtk2::TreeView, je lui en serai reconnaissant  :)


Message édité par Elghinn42 le 22-02-2005 à 16:26:41

---------------
"le logiciel libre est une question de liberté, pas de prix" - Richard M. Stallman - (http://www.gnu.org/philosophy/why-free.fr.html)
mood
Publicité
Posté le 20-02-2005 à 20:20:52  profilanswer
 

n°987866
couak
Posté le 20-02-2005 à 20:35:17  profilanswer
 

cela fait très longtemps que je n'ai pas fait de GTK (mais jamais avec Perl :p) mais si tu veux visionner une "variable" tu peux utiliser des Data::Dump ou Data::Dumper pour voir la tronche de ta variable

n°987914
Elghinn42
Posté le 20-02-2005 à 22:32:02  profilanswer
 

Citation :

cela fait très longtemps que je n'ai pas fait de GTK (mais jamais avec Perl :p)


Je ne pense pas que le fait que je fasse du perl change grand chose à mon problème. J'aurai eu le même si j'avais fait du C ou du python je pense.
 

Citation :

mais si tu veux visionner une "variable" tu peux utiliser des Data::Dump ou Data::Dumper pour voir la tronche de ta variable


Bah, je me suis déjà servi plusieurs fois de Dumper, et c'est vrai que c'est bien pratique, surtout quand on se lance dans des structures complexes (genre table de hachage de tableau de tableau de table de hachage ^^).
 
Seulement, pour ce coup-ci, elle ne m'a pas été de grande aide :/
Voici ce qu'elle me retourne:
$VAR1 = bless( {}, 'Gtk2::TreeView' );
 
Merci quand même  :)


---------------
"le logiciel libre est une question de liberté, pas de prix" - Richard M. Stallman - (http://www.gnu.org/philosophy/why-free.fr.html)
n°990057
Elghinn42
Posté le 22-02-2005 à 16:25:04  profilanswer
 

Bon, finalement, j'ai fini par trouver tout seul  :o  
 
Pour celà, je me suis aidé de la page http://scentric.net/tutorial/sec-t [...] ieval.html
 
Je donne la solution pour le cas où ca intêresserai quelqu'un.
 
Pour résumer, il faut faire quelque chose du genre: $treeview->get_model()->foreach(\&foreach_func, undef);
 
et dans la fonction foreach_func, on récupère les arguments:
  my ($model,$path,$iter,$user_data) = @_;
 
ensuite, pour récupérer la valeur de la premiere colonne de la ligne courante, il faut faire:  my ($valeur) = $model->get($iter,0);
 
Pour récupèrer les valeurs des colonnes 2 et 4 (à condition d'en avoir assez ;):
  my ($valeur2,$valeur4) = $model->get($iter,2,4);
 
Et pour finir, si l'ont veut récupérer le numéro de la ligne courante sous forme de chaine de caractère:
  my $tree_path_str = $path->to_string();
 
Si je n'ai pas été assez clair, n'hésitez pas à me demander ce que vous n'avez pas compris.
 
Sur ce, je retourne bosser sur mon projet  :hello:


---------------
"le logiciel libre est une question de liberté, pas de prix" - Richard M. Stallman - (http://www.gnu.org/philosophy/why-free.fr.html)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  [Résolu][Perl/Gtk2] Récupérer les éléments d'un Gtk2::TreeView

 

Sujets relatifs
[Perl] Regexp sur plusieurs lignesgarder la valeur d'une variable[résolu]
[C] Communication processus sous windows[Resolu]Jai perdu ma source + prob ouvrir nouvelle fenetre [Resolu]
[Java] Dessin dans un buffer affiché par paint => problème RESOLUQu'est ce que c'est "SHIFT" en perl???
[Résolu !] liste déroulante dépendante (valeur non gardée)[C#/VB.NET] [Résolu] Equivalent de GetObject ?
Récupérer fichier mdb d'une version 1.x ( access sous win3.x)[resolu]Texte inséré automatiquement dans formulaire
Plus de sujets relatifs à : [Résolu][Perl/Gtk2] Récupérer les éléments d'un Gtk2::TreeView


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR