Bonjour,
J'ai dans mon programme principal
1 2 3 4 5 6 7 8 9 10
| sub selectAll {
deselect();
Epingle::selectAll();
Line::selectAll();
Linepique::selectAll();
Trait::selectAll();
Curve::selectAll();
calcul_selectionne_multiple();
return;
} |
Et dans chaque package .pm
1 2 3 4 5
| sub selectAll {
foreach my $liste (values %liste) {
$liste->selectionne();
}
} |
Toutes ces .pm hérite d'un Commun.pm
J'ai donc essayé de virer la méthode dans chaque .pm, et d'en mettre une commune dans Commun.pm
1 2 3 4 5 6
| sub selectAll {
my $class=shift;
foreach my $liste (values %$class::liste) {
$liste->selectionne();
}
} |
Au dela de savoir si elle est bien écrite, le fait est que ca ne fonctionne pas, car il ne trouve pas Epingle::selectAll
Tk::Error: Undefined subroutine &Epingle::selectAll called at ./dentelle.pl line 1093.
Donc, comment faire pour hériter d'une méthode de classe ? (si j'ai bien compris mon problème)
Bien le merci.
Partager