Hallo zusammen,
ich programmiere jetzt schon seit längerer Zeit Python. Mein Steckenpferd war bis jetzt immer die Webentwicklung mit Django aber auch kleine Netzwerkdienste und Tools habe ich programmiert. Jetzt möchte ich mich an die GUI-Programmierung wagen. Ich habe mich für pyGTK entschieden, weil ich die Programme hauptsächlich unter Linux (Ubuntu) verwenden möchte. Kleine Programme konnte ich damit auch schon ganz gut erstellen.
Jetzt aber zu meiner Frage:
Ich plane ein Programm mit einer Toolbar, mit 3 Icons. Bei einem Klick auf das erste Icon soll im selben Fenster der gesamte Anzeigebereich (Mitte des Programms, bzw. der VBox) durch etwas anderes ersetzt werden werden, klicke ich auf das 2 Icon soll der gleiche Bereich wieder durch etwas anderes ersetzt werden usw.
Hier mal ein kleines Bildbeispiel eines x-beliebigen Programms, das ich bei google gefunden habe:
Angenommen ich klicke auf "Convert", dann soll der Listview durch ein anderes Element ersetzt werden, klicke ich auf "Add File" soll das eben ersetzte wieder durch etwas anderes ersetzt werden usw.
Problem ist, wie kann ich rausbekommen, was gerade aktiv ist?
Ich könnte höchstens in einer Variable speichern, was gerade geklickt wurde und darauf dann entsprechend reagieren. Aber geht das anders (schöner)?
Vielen Dank.
Austauschen eines Bereichs durch Klick auf Toolbar Icon
Hallo
Währe da nicht ein Notebook (http://www.pygtk.org/docs/pygtk/class-gtknotebook.html) besser für geeignet?
Ansonsten kann du ja es so mit der Variable machen, mache ich auch immer so und funktioniert super.
Gruß
Andyh
Währe da nicht ein Notebook (http://www.pygtk.org/docs/pygtk/class-gtknotebook.html) besser für geeignet?
Ansonsten kann du ja es so mit der Variable machen, mache ich auch immer so und funktioniert super.
Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys
if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys
if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Rein prinzipiell musst du gar nichts in einer Variable speichern. Du leerst einfach die VBox und füllst sie neu.
Oder musst du aus irgendeinem Grund wissen, was gerade aktiv ist. Selbst dann ist es doch kein Problem, das in einer Variable zu speichern.
(Wobei ich persönlich in diesem Fall auch eine Notebook-Variante verwenden würde.)
Oder musst du aus irgendeinem Grund wissen, was gerade aktiv ist. Selbst dann ist es doch kein Problem, das in einer Variable zu speichern.
(Wobei ich persönlich in diesem Fall auch eine Notebook-Variante verwenden würde.)