von moritz » Di, 22.09.2009 12:54
Hallo, ich möchte ein Calc- Dokument öffnen und eine bestimmte Tabelle aktiv setzen.
Eine eventuelle Seitenansicht muß vorher geschlossen werden. Das funktioniert auch grundsätzlich, hier ein Ausschnitt.
Wenn Seitenansicht aktiv, dann:
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:PrintPreview", "", 0, Array())
oTabelle = ThisComponent.getSheets().getByName(sTabelle)
ThisComponent.CurrentController.setActiveSheet(oTabelle) -> Fehlermeldung
Es fehlt augenscheinlich eine Bildschirmaktiualisierung.
Wenn ich vor der Zeile "ThisComponent.CurrentController.setActiveSheet(oTabelle)" eine MsgBox aufrufe funktioniert das Ganze.
also z.B. so: Msgbox "Schalte auf Tabellenansicht um."
Diese Lösung mit der MsgBox finde ich allerdings nicht so toll. Kann mir jemand einen Tip geben, wie ich ohne diese Zeile die Ansicht aktualisieren kann?
Besten Dank
Moritz
Hallo, ich möchte ein Calc- Dokument öffnen und eine bestimmte Tabelle aktiv setzen.
Eine eventuelle Seitenansicht muß vorher geschlossen werden. Das funktioniert auch grundsätzlich, hier ein Ausschnitt.
Wenn Seitenansicht aktiv, dann:
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:PrintPreview", "", 0, Array())
oTabelle = ThisComponent.getSheets().getByName(sTabelle)
ThisComponent.CurrentController.setActiveSheet(oTabelle) -> Fehlermeldung
Es fehlt augenscheinlich eine Bildschirmaktiualisierung.
Wenn ich vor der Zeile "ThisComponent.CurrentController.setActiveSheet(oTabelle)" eine MsgBox aufrufe funktioniert das Ganze.
also z.B. so: Msgbox "Schalte auf Tabellenansicht um."
Diese Lösung mit der MsgBox finde ich allerdings nicht so toll. Kann mir jemand einen Tip geben, wie ich ohne diese Zeile die Ansicht aktualisieren kann?
Besten Dank
Moritz