Thread Zweitfenster durch 2. MainLoop?: Anmelde- und Arbeitsfenster benötigt (11 answers)
Opened by Herr_Cisie at 2006-04-10 11:32

coax
 2006-04-14 01:46
#45325 #45325
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
Bin mir nicht sicher ob ich die eigentliche Problematik verstanden habe. Warum sollte das Toplevel fuer Eingaben ungeeignet sein?

Vielleicht hilft dir dies ja weiter:
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
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
#!/usr/bin/perl
# AnmeldeFenster.pl

 use strict;
 use warnings;

 use Tk;

 my $mw = MainWindow->new();

 $mw->withdraw();
 $mw->Label(-text => "You're successful logged in!")->pack();

 my $tp_login = $mw->Toplevel();

 $tp_login->title('Login');

 my $l_msg = $tp_login->Label(-foreground => 'black')->grid('-');

 my $l_login = $tp_login->Label(-text => 'Login:');

 my $e_login = $tp_login->Entry();

 $l_login->grid($e_login);

 my $l_passwd = $tp_login->Label(-text => 'Password:');

 my $e_passwd = $tp_login->Entry(-show => '*');

 $l_passwd->grid($e_passwd);

 my $b_login = $tp_login->Button(-text => 'Login',
                                 -command => \&login);

 my $b_cancel = $tp_login->Button(-text => 'Cancel',
                                  -command => \&exit_app);

 $b_login->grid($b_cancel);

 $tp_login->grab();
 $tp_login->focus();

 MainLoop;

 sub login {
     my $login =  $e_login->get();
     my $passwd = $e_passwd->get();

     if( $login eq 'admin' and $passwd eq 'secret') {
         $tp_login->grabRelease();
         $tp_login->destroy();
         $mw->deiconify();
         $mw->raise();
     }
     else {

         $l_msg->configure(-text => 'Invalid login');
         $e_login->configure(-text => '');
         $e_passwd->configure(-text => '');
     }
 }

 sub exit_app { Tk::exit; }


Grusz Christian.
,,Das perlt aber heute wieder...'' -- Dittsche

View full thread Zweitfenster durch 2. MainLoop?: Anmelde- und Arbeitsfenster benötigt