Récupérer les éléments d'un Gtk2::TreeView [Résolu][Perl/Gtk2] - Perl - Programmation
Marsh Posté le 20-02-2005 à 20:35:17
cela fait très longtemps que je n'ai pas fait de GTK (mais jamais avec Perl ) mais si tu veux visionner une "variable" tu peux utiliser des Data::Dump ou Data::Dumper pour voir la tronche de ta variable
Marsh Posté le 20-02-2005 à 22:32:02
Citation : cela fait très longtemps que je n'ai pas fait de GTK (mais jamais avec Perl ) |
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
Marsh Posté le 22-02-2005 à 16:25:04
Bon, finalement, j'ai fini par trouver tout seul
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
Marsh Posté le 20-02-2005 à 20:20:52
Bonjour
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é
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)