Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]5350[/thread]

Vererbung einer Klasse: Objekt in Tk um Methoden erweitern

Leser: 2


<< >> 4 Einträge, 1 Seite
#Kein Kommentar
 2007-07-09 17:12
#46576 #46576
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
hi,

ich habe eine frage, ich will ein objekt in Tk::RotCanvas
mit Methoden erweitern, wie krieg ich das hin?

muss ich mir eine eigene klasse schreiben und die Methoden
des Tk::RotCanvas erben?
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Sucher
 2007-07-09 19:01
#46577 #46577
User since
2007-03-26
47 Artikel
BenutzerIn
[default_avatar]
Hallo,

Tk::RotCanvas ist eine ganz normale Perl-Klasse.
D.H. du kannst
Code: (dl )
1
2
3
4
sub Tk::RotCanvas::meine_methode{
my $self = shift;
#tu was
}

schreiben.

Grüße
#Kein Kommentar
 2007-07-11 16:57
#46578 #46578
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
danke, deine antwort hat mir weitergeholfen\n\n

<!--EDIT|#Kein Kommentar|1184158683-->
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Strat
 2007-07-12 01:35
#46579 #46579
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
ich glaube, der "offizielle" Weg geht darueber, ein abgeleitetes widget zu bauen, z.B.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package Tk::MyRotCanvas;
use warnings;
use strict;
use Tk::Derived;
use Tk::RotCanvas;

use vars qw( @ISA );
@ISA = qw( Tk::Derived Tk::RotCanvas );

Construct Tk::Widget 'MyRotCanvas'
sub ClassInit {
my( $class, $parent ) = @_;
$class->SUPER::ClassInit( parent );
}

sub Populate {
my( $self, $args ) = @_;

$self->SUPER::Populate( $args );
}

# weitere methoden

1;


aber das Mixin von Sucher funzt auch, und ist einfacher zu coden

Siehe Tk::Derived, Tk::ConfigSpecs
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< >> 4 Einträge, 1 Seite



View all threads created 2007-07-09 17:12.