Perl - Interfejs Tk

0

Witam. Mam następujący problem, pisze sobie coś takiego:

#!/usr/bin/perl -w

use Tk;
$a=MainWindow->new();
$a->title("costam");
$b=$a->Label(text => 'hello world',
                     anchor => 'n',
                     relief => 'groove',
                     width => 10, height => 10);
$b->pack();
MainLoop();

Zapisuje to jako hello.pl i teraz jak odpalam to, to powinno się mi pokazać okienko z napisem 'hello world', jednak tak się nie dzieje tylko wyskakuje mi błąd w terminalu:

unknown option "width" at /usr/local/lib/perl5/site_perl/5.8.5/mach/Tk/Widget.pm line 205. at hello.pl line 4

Z góry dzięki za odpowiedz.

0

u mnie ten kod poprawnie działa

0
marcino. napisał(a):

witam.


mam nastepujacy problem, pisze sobie cos takiego:

#!/usr/bin/perl -w
use Tk;
$a=MainWindow->new();
$a->title("costam");
$b=$a->Label(text => 'hello world',
anchor => 'n',
relief => 'groove',
width => 10, height => 10);
$b->pack();
MainLoop();

zapisuje to jako hello.pl
i teraz jak odpalam to, to powinno sie mi pokazac okienko z napisem 'hello world', jednak tak sie nie dzieje tylko wyskakuje mi blad w terminalu:

unknown option "width" at /usr/local/lib/perl5/site_perl/5.8.5/mach/Tk/Widget.pm line 205.
at hello.pl line 4

z gory dzieki za odpowiedz.

Sporo czasu upłynęło od zadania pytania, ale może ktoś ponownie spotkał się z takim problemem, więc tłumaczę o co chodzi z tym błędem:

Kilka lat temu, przy przechodzeniu na kolejną wersję Tk (804) wprowadzono w bibliotece dodatkowe reguły m.in. dotyczace kluczy w tablicach asocjacyjnych (haszach) gdzie ustalono obowiązkowe poprzedzanie kluczy myślnikiem (-). Dlatego starsze skrypty wywoływane z tą nowszą biblioteką generują błąd.

Zatem poprawiony fragment skryptu powinien wyglądać tak:

$b=$a->Label( -text     => 'hello world',
                      -anchor => 'n',
                      -relief   => 'groove',
                      -width   => 10, -height => 10);

1 użytkowników online, w tym zalogowanych: 0, gości: 1