Thread Tk - Funktion transient (2 answers)
Opened by pq at 2008-03-28 20:23

pq
 2008-03-28 20:23
#107613 #107613
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
hi,

ich bin bisher noch nicht so bewandert in Tk und habe leichtsinnigerweise CPAN:Tk::ColourChooser
übernommen. es ist seit einigen jahren nicht weiterentwickelt worden und es hat einen fehler.
ich vermute, weil es in Tk änderungen gab.
der fehlerhafte code lautet:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
    my( $win, $args ) = @_ ;

    $win->SUPER::Populate( $args ) ;
    
    $win->withdraw ;
    $win->iconname( $args->{-title} ) ;
    $win->protocol( 'WM_DELETE_WINDOW' => sub { } ) ;
    # Tk/ColourChooser Zeile 50:
    $win->transient( $win->toplevel ) ;

in der letzten zeile gibt es folgenden fehler:
Code: (dl )
1
2
can't make ".colourchooser1" its own master at /usr/lib/perl5/Tk/Submethods.pm line 37.
at blib/lib/Tk/ColourChooser.pm line 50

ich habe das nun in ein eval {} gepackt, und damit "läuft es", je nachdem, in was für eine
umgebung man das fenster lädt. ich bin aber nicht sicher, was die funktion machen sollte.
kann mir da jemand einen tip geben?
die aktuelle version mit dem eval ist auf cpan.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Tk - Funktion transient