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

Subs für Reiterwechsel



<< |< 1 2 >| >> 11 Einträge, 2 Seiten
J-jayz-Z
 2005-07-18 22:57
#44177 #44177
User since
2005-04-13
625 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hi,

ist es irgendwie möglich, eine subroutine für den wechsel zwischen verschiedenen Notebooks zu schreiben?
Also was passieren soll, wenn ich in einen anderen Reiter wechsel?
danke schonmal
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
esskar
 2005-07-19 00:27
#44178 #44178
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
du kannst -raisecmd setzen; diese wird dann aufgerufen, wenn das jeweilige Tab aktiviert wird
J-jayz-Z
 2005-07-19 00:44
#44179 #44179
User since
2005-04-13
625 Artikel
BenutzerIn
[Homepage] [default_avatar]
Danke, das war genau das, was ich suchte !
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
J-jayz-Z
 2005-07-19 00:59
#44180 #44180
User since
2005-04-13
625 Artikel
BenutzerIn
[Homepage] [default_avatar]
Ich hab hier ein Notebook, das ich aufrufe und es aus einem anderen Notebook Text übernimmt und in einem Label Widget darstellen soll. Allerdings wird das neue, was übernommen wurde, wenn ich nochmal etwas eingebe nur unten dran gehängt und das alte nicht gelöscht. Kann mir da jemand helfen? Hier die sub, die ich mit -raisecmd aufrufe:
Code: (dl )
1
2
3
4
sub get {
$page2->Label(-text => $entry->get())->pack() if($entry->get());
$entry->delete('0.0','end');
}
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
esskar
 2005-07-19 01:02
#44181 #44181
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
für sowas gibt es doch sowas wie -textvariable oder so, oder?
J-jayz-Z
 2005-07-19 01:09
#44182 #44182
User since
2005-04-13
625 Artikel
BenutzerIn
[Homepage] [default_avatar]
Habe ich auch versucht. Das ändert nichts daran...
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
esskar
 2005-07-19 01:10
#44183 #44183
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=J-jayz-Z,18.07.2005, 23:09]Habe ich auch versucht. Das ändert nichts daran...[/quote]
zeig mal code?
J-jayz-Z
 2005-07-19 01:17
#44184 #44184
User since
2005-04-13
625 Artikel
BenutzerIn
[Homepage] [default_avatar]
Okay, hier ein kleines snippet:
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
25
#!/usr/bin/perl
use strict;
use warnings;

use Tk;
use Tk::NoteBook;

my $main = MainWindow->new();

my $note = $main->NoteBook()->pack();

my $page1 = $note->add('Notebook-1', -label => 'ReiterEins');
my $page2 = $note->add('Notebook-2', -label => 'ReiterZwei', -raisecmd => \&test
);

my $entry = $page1->Entry()->pack();
$entry->focus();

MainLoop();

sub test {
my $text = $entry->get();
$page2->Label(-textvariable => \$text)->pack() if($text);
$entry->delete('0.0','end');
}
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
esskar
 2005-07-19 02:10
#44185 #44185
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
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
25
26
27
28
29
30
31
32
33
34
#!/usr/bin/perl
use strict;
use warnings;

use Tk;
use Tk::NoteBook;

my $main = MainWindow->new();
my $note = $main->NoteBook()->pack();

my $page1 = $note->add(
'Notebook-1',
-label => 'ReiterEins'
);


my $page2 = $note->add(
'Notebook-2',
-label => 'ReiterZwei',
-raisecmd => \&test
);

my $text = '';
my $label = $page2->Label(-textvariable => \$text)->pack();

my $entry = $page1->Entry()->pack();
$entry->focus();

MainLoop();

sub test {
$text = $entry->get();
$entry->delete('0.0','end');
}


du hattest immer ein neues label angelegt!
renee
 2005-07-19 02:21
#44186 #44186
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das hier funktioniert:
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
25
#!/usr/bin/perl
use strict;
use warnings;

use Tk;
use Tk::NoteBook;

my $main = MainWindow->new();
my $note = $main->NoteBook()->pack();
my $text = '';

my $page1 = $note->add('Notebook-1', -label => 'ReiterEins');
my $page2 = $note->add('Notebook-2', -label => 'ReiterZwei', -raisecmd => \&test);

my $entry = $page1->Entry()->pack();
$page2->Label(-textvariable => \$text)->pack();

$entry->focus();

MainLoop();

sub test {
$text = $entry->get();
$entry->delete('0.0','end');
}


Edit: Uups, da muss wohl schon fast gepennt haben. esskar war mal wieder viel schneller...\n\n

<!--EDIT|renee|1121725380-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2005-07-18 22:57.