ich bin gerade dabei eine GUI Anwendung zu schreiben, die über diverse Methoden verfügt um Objekte im aktuellen aktivierten Dokument zu bearbeiten.
Um dieses GUI Benutzerfreundlich zu gestalten habe ich 2 Buttons eingebaut, die jeweils die Funktion, wechselFensterLinks und wechselFensterRechts besitzen.
Ich möchte, das man mit einem Klick einfach von Dokument zu Dokument wechselt.
Leider gelingt mir das nur zum Teil!!
Meine Methoden aktivieren zwar das Dokument, aber das neu aktivierte Dokument wird nicht im Fenster angezeigt.
So als ob ein "aktualisieren" fehlen würde...
Könnt ihr mir da weiterhelfen?
Code: Select all
def wechselnFensterRechts(self):
if(FreeCADGui.ActiveDocument.Document.Name[7:]==''):
fenster_nummer=0
else:
fenster_nummer=int(FreeCADGui.ActiveDocument.Document.Name[7:])
if(fenster_nummer < len(App.listDocuments())):
new_fenster=fenster_nummer+1
new_doc_name="Unnamed"+str(new_fenster)
App.setActiveDocument(new_doc_name)
App.ActiveDocument=App.getDocument(new_doc_name)
Gui.ActiveDocument=Gui.getDocument(new_doc_name)
Gui.SendMsgToActiveView("ViewFit")
#App.ActiveDocument.recompute()
def wechselnFensterLinks(self):
if(FreeCADGui.ActiveDocument.Document.Name[7:]==''):
fenster_nummer=0
else:
fenster_nummer=int(FreeCADGui.ActiveDocument.Document.Name[7:])
if(fenster_nummer >0):
new_fenster=fenster_nummer-1
if (new_fenster==0):
App.setActiveDocument("Unnamed")
App.ActiveDocument=App.getDocument("Unnamed")
Gui.ActiveDocument=Gui.getDocument("Unnamed")
Gui.SendMsgToActiveView("ViewFit")
#App.ActiveDocument.recompute()
else:
new_doc_name="Unnamed"+str(new_fenster)
App.setActiveDocument(new_doc_name)
App.ActiveDocument=App.getDocument(new_doc_name)
Gui.ActiveDocument=Gui.getDocument(new_doc_name)
Gui.SendMsgToActiveView("ViewFit")
#App.ActiveDocument.recompute()