Spreadsheet refresh ausschalten?

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Spreadsheet refresh ausschalten?

Re: Spreadsheet refresh ausschalten?

von komma4 » Mo, 01.12.2008 19:42

Ja, so macht es DateTime2 ;-)

Code: Alles auswählen

' Daten auf diesen Bereich
oSelection.setDataArray( oDaten() )
If sDateTime_setAs= "val" Then
 ' Datumformat (ist ein Nummernformat) anwenden
 ' apply date (number) format
 oSelection.NumberFormat = nDateTime_SetFormat
End If
Du wolltest Dir doch den Code ansehen...

Re: Spreadsheet refresh ausschalten?

von komma4 » Mo, 01.12.2008 12:38

Markus1972 hat geschrieben:PS: Den Sourcecode gibts nicht zufällig irgendwo zum Download?
In den Code-Modulen der Extensions :-)

Du brauchst auch keine DATE Struktur füllen, nehme einfach DateSerial (siehe F1)

Code: Alles auswählen

Dim lDatum as Long
lDatum = DateSerial( 2003, 01, 20 )
ach so; Java....:keine Ahnung

Re: Spreadsheet refresh ausschalten?

von Markus1972 » Mo, 01.12.2008 08:25

Ah,

ich sehe, Du hast da mal so ein paar Extensions geschrieben, bei denen ich sicherlich im Sourcecode ein paar Hinweise finden würde? ;-)

Markus

PS: Den Sourcecode gibts nicht zufällig irgendwo zum Download?

Re: Spreadsheet refresh ausschalten?

von Markus1972 » Mo, 01.12.2008 08:23

Hi,

ja, das weiss ich.
Hierbei habe ich aber zunächst mal das Problem, dass ich bisher noch nicht herausgefunden habe, wie man verlässlich ein java.util.Date in die entsprechende Zahl umwandelt, die von einer Zelle als Datum erkannt wird (da muss ja vom Nulldate des aktuellen Docs abgezogen werden und ich weiss schon nicht, wie man dieses bestimmt).
Hierzu gibt es viele Threads und Posts aber so richtig pfiffig war das alles bisher noch nicht.
Ein Code-Schnipsel, den ich gefunden habe, setzt einfach nen Text und formattiert dann die Zelle um.
Ist aus meiner Sicht sehr unelegant, aber ich hab wirklich lange Tage recherchiert und keinen Ansatz gefunden.
(mag auch sein, dass ich einige Prinzipien von OO noch nicht verstanden habe).

Falls ich es aber nun auf wundersame Weise doch schaffen sollte, ein java.util.Date in eine Zahl umzuwandeln, welche OO als Datum interpretiert - muss ich dann nicht dennoch der Zelle sagen, dass das ein Datum und keine einfache Zahl ist?

Danke für die Hilfe
Markus

Re: Spreadsheet refresh ausschalten?

von komma4 » So, 30.11.2008 21:52

Gast hat geschrieben:Ich muss nämlich ein paar Date-Felder setzen.
Ein Datum ist auch nur eine Zahl...

Re: Spreadsheet refresh ausschalten?

von komma4 » So, 30.11.2008 18:40

Das Schreiben von 500*8 Zellen geschieht -hoffentlich- über .setDataArray()?

Findet die Bearbeitung im Vordergrund statt, kannst Du einen Teil der Bildschirmaktualisierung ausschalten, oder den ActionLock für das Objekt nutzen

siehe
com.sun.star.frame interface XModel
ThisComponent.addActionLock()

und
com.sun.star.document interface XActionLockable
ThisComponent.lockControllers()


Diese Sperren müssen natürlich wieder zurückgenommen werden.

Kommst Du damit zurecht?

Nach oben