|< 1 2 >| | 12 Einträge, 2 Seiten |
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
#!/usr/bin/perl -w use strict; use warnings; use diagnostics; use Tk; use Tk::BrowseEntry; my $main = new MainWindow; $main->title('Unser AD/TK Projekt'); #$main->configure (-width=>"640",-height=>"480"); #Geht bei pack nicht my $toplevel = $main->toplevel; #Erzeugung Menü # Die Menueleiste wird in den Kopf des Fensters gehaengt my $menubar = $toplevel->Menu(-type => 'menubar'); $toplevel->configure(-menu => $menubar); # Nun bauen wir ein Datei-Menue my $mdatei = $menubar->cascade(-label => 'Datei', -underline => 0, -tearoff => 0); $mdatei->command(-label => 'Öffnen', -command => sub{datei_oeffnen()}); $mdatei->command(-label => 'Beenden', -command => sub{ exit }); # Nun bauen wir ein Benutzer-Menue my $mbenutzer = $menubar->cascade(-label => 'Benutzer',-underline => 0,-tearoff => 0); $mbenutzer->command(-label => 'Benutzer löschen', -command => sub{benutzer_loeschen()}); $mbenutzer->command(-label => 'Benutzer verschieben', -command => sub{ exit}); # Nun bauen wir ein Gruppen-Menue my $mgruppe = $menubar->cascade(-label => 'Gruppen',-underline => 0,-tearoff => 0); $mgruppe->command(-label => 'Gruppe erzeugen', -command => sub{exit}); $mgruppe->command(-label => 'Benutzer in Gruppe anzeigen lassen', -command => sub{ exit }); $mgruppe->command(-label => 'Benutzer in Gruppe hinzufügen', -command => sub{ exit }); $mgruppe->command(-label => 'Gruppe löschen', -command => sub{ gruppe_loeschen() }); # Nun bauen wir ein Hilfe-Menue my $mhilfe = $menubar->cascade(-label => 'Hilfe',-underline => 0,-tearoff => 0); $mhilfe->command(-label => 'Kontakt', -command => sub{hilfe_konakt()}); $mhilfe->command(-label => 'Info', -command => sub{ hilfe_info() }); my $framelist = $main->Frame; $framelist->pack(-side,'top'); my $label = $main->Label(-text => 'Unser AD/TK Projekt', -width=>"50") ->pack(-in=>$framelist, -side => 'top'); # Menü aufrufbar machen mit Alt und dem unterstrichenen Buchstaben: $main->bind('<Alt-d>', sub {}); $main->bind('<Alt-b>', sub {}); $main->bind('<Alt-g>', sub {}); $main->bind('<Alt-h>', sub {}); MainLoop; sub datei_oeffnen { my $dir = $main->getOpenFile(); #print $dir; #Ausgabe in der Konsole } sub gruppe_loeschen { my $dropdown1 = $main->BrowseEntry(-width=>"50")->pack(-side,'top'); #Inhalt Dropdown1 $dropdown1->insert(0,'eins','zwei','drei','vier','fünf'); my $button1 = $main->Button(-text => 'Gruppe löschen', -command => \&gruppenloeschen )->pack(-side,'bottom'); #$main->messageBox (-message=>"Programm wird beendet"); #exit; } sub benutzer_loeschen { my $dropdown2 = $main->BrowseEntry(-width=>"50")->pack( -side,'top'); #Inhalt Dropdown2 $dropdown2->insert(0,'eins','zwei','drei','vier','fünf'); my $button2 = $main->Button(-text => 'Benutzer löschen',-command => \&benutzerloeschen )->pack(-side,'bottom'); } sub hilfe_konakt { $main->messageBox (-title => 'Kontakt', -message=>'Support erhalten sie unter xxx@xxx.de'); } sub hilfe_info { $main->messageBox (-title => 'Info', -message=>'Programm Version v0.1'); }
$main-> minsize(qw(640 480));
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
sub gruppe_loeschen { my $dropdown1 = $main->BrowseEntry()->pack(-side,'top'); #Inhalt Dropdown1 $dropdown1->insert(0,'eins','zwei','drei','vier','fünf'); my $button1 = $main->Button(-text => 'Gruppe löschen', -command => sub { print "hallo"; } )->pack(-side,'bottom'); }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{my ($gr_frame,$dropdown1,$button1);
sub gruppe_loeschen
{
unless ($gr_frame){ # init
$gr_frame = $main->Frame;
$dropdown1 = $gr_frame->BrowseEntry(-width=> 50,
)->pack(-side => 'top');
$dropdown1->insert(0,'eins','zwei','drei','vier','fünf');
$button1 = $gr_frame->Button(-text => 'Gruppe löschen',
-command => sub{
#irgendetwas
$gr_frame->packForget;
}
)->pack(-side => 'bottom');
}
$gr_frame -> pack;
}
}
Krikus+2007-11-10 10:45:24--&Moin,
Also kann ich Zeile 55-58 weglassen.
Kann aber trotzdem nicht mit ALT+D z.B das Menü Datei aufrufen.
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
my $active_frame;
{my ($gr_frame,$dropdown1,$button1);
sub gruppe_loeschen
{
unless ($gr_frame){
$gr_frame = $main->Frame;
$dropdown1 = $gr_frame->BrowseEntry(-width=> 50,
)->pack(-side => 'top');
$dropdown1->insert(0,'eins','zwei','drei','vier','fünf');
$button1 = $gr_frame->Button(-text => 'Gruppe löschen',
-command => sub{
#irgendetwas
$gr_frame->packForget;
}
)->pack(-side => 'bottom');
}
$active_frame->packForget if ($active_frame);
$gr_frame -> pack;
$active_frame = $gr_frame;
}
}
{
my ($frame, $dropdown);
sub benutzer_loeschen
{
unless ($frame){
$frame = $main->Frame;
$dropdown = $frame->BrowseEntry(-width => 50,
)->pack( -side => 'top');
$dropdown->insert(0,'eins','zwei','drei','vier','fünf');
$frame->Button(-text => 'Benutzer löschen',
-command => sub{
#irgendetwas
$frame->packForget;
}
)->pack(-side,'bottom');
}
$active_frame->packForget if ($active_frame);
$frame->pack;
$active_frame = $frame;
}
}
1 2 3 4 5
unless ($gr_frame){} $active_frame->packForget if ($active_frame); $frame->pack; $active_frame = $frame;
|< 1 2 >| | 12 Einträge, 2 Seiten |