perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 23
Click for quality!




10.02.2012 / 19:50

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragPERL-TK Toplevel-widget wird zu spät angezeigt
Seitenanfang
Hallo

ich habe ein Programm geschrieben, das ein Dateiformat umwandelt. Um den Fortschritt der Umwandlung anzuzeigen, soll ein Fenster angezeigt werden, in dem die verarbeitete Zeilennummer hochgezählt wird.
Das Fenster wird vor der Verarbeitungsroutine erzeugt, erscheint aber erst wenn die Verarbeitung beendet ist.

sub konvertieren {
return 0 if not &Eingabepruefung;
&fuellenVerarbeitungsfelder;
# Fortschrittsfenster erzeugen
my $twf=$mw->Toplevel(-title => $TFortschrittsfenster);
my $lab = $twf->Label(-textvariable => \$ZeilenNummer,
-borderwidth => 2,
-relief => 'groove')->pack(-fill => 'x', -side => 'top');
my $but=$twf->Button(-text => $TSchlieszen,
-command => [$twf => 'destroy'])->
pack(-side => 'bottom');
sleep(7);

# eigentliche Verarbeitung starten
&Verarbeitung;

# Fortschrittsfenster entfernen;
#$twf->destroy() if Tk::Exists($twf);

}

Datum: 25.02.2005-08:49

Beitragre: PERL-TK Toplevel-widget wird zu spät angezeigt
Seitenanfang
Logisch kommt das fenster erst wenn der "umwandlungs"-prozess beendet ist. Solange dein Programm sein Pensum an arbeitsspeicher für das umrechnen deines formates verbraucht hängt dein tk fenster, bzw. wird, wenn es erzeugt werden soll erst angezeigt, wenn dein skript fertig ist.

Datum: 26.02.2005-01:27

Beitragre: PERL-TK Toplevel-widget wird zu spät angezeigt
Seitenanfang
Ach und versuchs mal mit fork. Erzeugt einen Childprozess in dem du dann entweder dein tk-fensterchen laufen lässt oder deine umwandlungs-schleife(n). Je nach dem wie dus brauchst, versuch ne verbindung über ne pipe oder unix-verbindung zwischen beiden prozessen (parent/child) herzustellen.
http://perldoc.perldrunks.org/functions/fork.html

Datum: 26.02.2005-01:33

Beitragre: PERL-TK Toplevel-widget wird zu spät angezeigt
Seitenanfang
soviel ich weiss kannst du Tk nicht in einen fork auslagern, das geht nicht.

Datum: 07.04.2005-02:22

-






-
-