Perl Tk, nur ein Fenster
Hallo
Zur Zeit arbeite ich mit einem Fenster und erzeuge zum
Bearbeiten/Importieren jeweils ein neues, wobei dieses dann den
Fokus bekommt. Mit grab wird das Hauptfenster deaktiviert.
Wenn ich jetzt alles in einem Fenster machen will, so habe ich
vor, die Frames des jeweils aktiven Fensters zu zerstören und die
für das neue Fenster aufzubauen.
Ist das der richtige Ansatz? Gibt es da irgendwelche Stolperfallen
(ich möchte nicht unbedingt jede durch eigene Erfahrung
kennenlernen ;-) ).
--
Schönen Gruß aus dem Bergischen Land
Robert
Re: Perl Tk, nur ein Fenster
Robert Berghaus schrieb:
> Hallo
>
> Zur Zeit arbeite ich mit einem Fenster und erzeuge zum
> Bearbeiten/Importieren jeweils ein neues, wobei dieses dann den Fokus
> bekommt. Mit grab wird das Hauptfenster deaktiviert.
> Wenn ich jetzt alles in einem Fenster machen will, so habe ich vor, die
> Frames des jeweils aktiven Fensters zu zerstören und die für das neue
> Fenster aufzubauen.
> Ist das der richtige Ansatz? Gibt es da irgendwelche Stolperfallen (ich
> möchte nicht unbedingt jede durch eigene Erfahrung kennenlernen ;-) ).
>
Hallo,
es ist besser, die unterschiedlichen Ansichten nur einmal zu erzeugen (Jeweils
in einem eigenen Frame) und diesen dann mit 'pack' und 'packForget', oder den
entsprechenden Methoden deines bevorzugten Geometry Managers, ein- bzw.
auszublenden.
Mit 'destroy' und neu erzeugten Widgets verlierst du Speicher, mit
'pack'/'packForget' nicht.
Grüße, Christoph
--
use Tk;use Tk::GraphItems;$c=tkinit->Canvas->pack;push [at] i,Tk::GraphItems ->
TextBox(text=>$_,canvas=>$c,x=>$x+=70,y=>100)for(Just=>anoth er=>Perl=>Hacker);
Tk::GraphItems->Connector(source=>$i[$_],target=>$i[$_+1])fo r(0..2);
$c->repeat(30,sub{$_->move(0,4*cos($d+=3.16))for( [at] i)});MainL oop
Re: Perl Tk, nur ein Fenster
Hallo Christoph
Ch Lamprecht schrieb:
> Robert Berghaus schrieb:
>> Hallo
>>
>> Zur Zeit arbeite ich mit einem Fenster und erzeuge zum
>> Bearbeiten/Importieren jeweils ein neues, wobei dieses dann den Fokus =
>> bekommt. Mit grab wird das Hauptfenster deaktiviert.
>> Wenn ich jetzt alles in einem Fenster machen will, so habe ich vor,
>> die Frames des jeweils aktiven Fensters zu zerstören und die für d=
as
>> neue Fenster aufzubauen.
>> Ist das der richtige Ansatz? Gibt es da irgendwelche Stolperfallen
>> (ich möchte nicht unbedingt jede durch eigene Erfahrung kennenlernen=
>> ;-) ).
>>
> Hallo,
>
> es ist besser, die unterschiedlichen Ansichten nur einmal zu erzeugen
> (Jeweils in einem eigenen Frame) und diesen dann mit 'pack' und
> 'packForget', oder den entsprechenden Methoden deines bevorzugten
> Geometry Managers, ein- bzw. auszublenden.
> Mit 'destroy' und neu erzeugten Widgets verlierst du Speicher, mit
> 'pack'/'packForget' nicht.
Das mit packForget hatte ich wohl nicht richtig gelesen (oder auch
nicht verstanden). Ich werde morgen damit mal ein wenig rumspielen.
Vielen Dank
--
Schönen Gruß aus dem Bergischen Land
Robert
Re: Perl Tk, nur ein Fenster
Hallo Christoph
Ch Lamprecht schrieb:
> Robert Berghaus schrieb:
>> Hallo
>>
>> Zur Zeit arbeite ich mit einem Fenster und erzeuge zum
>> Bearbeiten/Importieren jeweils ein neues, wobei dieses dann den Fokus =
>> bekommt. Mit grab wird das Hauptfenster deaktiviert.
>> Wenn ich jetzt alles in einem Fenster machen will, so habe ich vor,
>> die Frames des jeweils aktiven Fensters zu zerstören und die für d=
as
>> neue Fenster aufzubauen.
>> Ist das der richtige Ansatz? Gibt es da irgendwelche Stolperfallen
>> (ich möchte nicht unbedingt jede durch eigene Erfahrung kennenlernen=
>> ;-) ).
>>
> Hallo,
>
> es ist besser, die unterschiedlichen Ansichten nur einmal zu erzeugen
> (Jeweils in einem eigenen Frame) und diesen dann mit 'pack' und
> 'packForget', oder den entsprechenden Methoden deines bevorzugten
> Geometry Managers, ein- bzw. auszublenden.
> Mit 'destroy' und neu erzeugten Widgets verlierst du Speicher, mit
> 'pack'/'packForget' nicht.
'pack'/'packForget' funktioniert einwandfrei in einer kleinen
Testanwendung. Danke.
Für die große Anwendung muß ich jetzt nur noch entscheiden,
welches Fenster ich hier mit rein packe, bzw. welches besser in
einem neuen Fenster angezeigt wird.
--
Schönen Gruß aus dem Bergischen Land
Robert