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

Anzeigen des GUI



<< >> 9 Einträge, 1 Seite
Gast Gast
 2004-08-20 20:04
#42518 #42518
Hallo,
ich bin gerade dabei Perl zu lernen und habe das erste Mal ein Skript mit GUI erstellt. Vielleicht findet ihr die Frage ein bisschen komisch,aber wie rufe ich das Skript denn auf? Über die Eingabekonsole erhalte ich nur eine superlange Liste mit jeweils "Subroutine" am Anfang. Das Skript:

#!/usr/bin/perl -w

use strict;
use TK;

my $haupt = new MainWindow;

$haupt ->Label(-text => "Greetings!")->pack;

$haupt->Button(-text=>"Beenden",
-command=>[$haupt=>'destroy']
)->pack;
MainLoop();

Ich wollte das TK Modul aus dem Internet laden,aber es kam die Meldung,daß ich dies bereits installiert habe.
Wie rufe ich denn das Skript auf?

Vielen Dank schonmal im vorraus!!

Gruß
Ronnie
 2004-08-20 20:27
#42519 #42519
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/perl

use strict;
use TK;

my $haupt = new MainWindow;

$haupt->Label(-text => "Greetings!")->pack;

$haupt->Button(-text=>"Beenden",
-command=>[$haupt=>'destroy']
)->pack;
$haupt->MainLoop(); # hier fehlte was!


die letzte Warnung war die richtige. Das Aufrufen über die Console ist schon richtig.
frank_D
 2004-08-20 21:23
#42520 #42520
User since
2004-08-20
6 Artikel
BenutzerIn
[default_avatar]
Wenn der Aufruf richtig ist,wieso funktioniert es dann nicht?
Du hast geschrieben.dass nach MainLoop etwas fehlt. Was fehlt denn dort?

Gruß
Ronnie
 2004-08-20 21:41
#42521 #42521
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=frank_D,20.08.2004, 19:23]Du hast geschrieben.dass nach MainLoop etwas fehlt. Was fehlt denn dort?[/quote]
VOR MainLoop(); fehlte etwas: $haupt->
Code: (dl )
$haupt->MainLoop(); 
coax
 2004-08-20 21:42
#42522 #42522
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
[quote=Guest,20.08.2004, 18:04]
Code: (dl )
1
2
3
4
 #!/usr/bin/perl -w

use strict;
use TK;
[/quote]
es muss Tk statt TK heiszen.
,,Das perlt aber heute wieder...'' -- Dittsche
ptk
 2004-08-21 02:22
#42523 #42523
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
MainLoop; ohne was davor ist schon richtig...
Ronnie
 2004-08-21 12:06
#42524 #42524
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=ptk,21.08.2004, 00:22]MainLoop; ohne was davor ist schon richtig...[/quote]
Probier beide Varianten mal aus! Die Variante ohne was davor scheitert so, wie sie oben angegeben ist!

Update: Wenn man Coax Hinweis berücksichtigt funktioniert es auch ohne was davor!

Update2: Wenn use TK; verwendet wird, werden Funktionen die normalerweise exportiert werden, nicht exportiert, können aber als Methode aufgerufen werden. Bei use Tk; funktioniert alles erwartungsgemäß.\n\n

<!--EDIT|Ronnie|1093079862-->
ptk
 2004-08-23 13:02
#42525 #42525
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Erklaerung:
Code: (dl )
use TK
funktioniert auf Systemen, auf denen im Dateisystem nicht zwischen Gross- und Kleinschreibung unterschieden wird (Windows, Mac). Das Problem dabei ist (neben der fehlenden Kompatibilitaet), dass "import TK" natuerlich fehlschlaegt, weil Perl case-sensitive ist.
Crian
 2004-08-23 17:40
#42526 #42526
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Ein perfider Fehler =)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
<< >> 9 Einträge, 1 Seite



View all threads created 2004-08-20 20:04.