Ist die CurrentSelection in Impress Read-Only?

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: Ist die CurrentSelection in Impress Read-Only?

Re: Ist die CurrentSelection in Impress Read-Only?

von heitzig-j » Fr, 06.05.2011 16:55

Sorry, das war nur ein Copy/Paste-Fehler, natürlich habe ich es mit

Code: Alles auswählen

oSelection.String = "test"
und so weiter versucht...

Es kommt dann auch keine Fehlermeldung, und der neu zugewiesene Wert der Property kann sogar mit msgbox wieder korrekt ausgegeben werden,
aber im Dokument hat das ganze überhaupt keinen sichtbaren Effekt, so als ob man nur auf einer virtuellen Kopie arbeiten würde, statt auf dem echten Dokument.

Re: Ist die CurrentSelection in Impress Read-Only?

von DPunch » Fr, 06.05.2011 16:45

Aloha

Ich kann zwar nichts konkret über Impress-spezifische Dinge sagen, aber ganz allgemein wirst Du mit

Code: Alles auswählen

msgbox oSelection.String = "test"
auch nichts schreiben können.
Die vorliegende Codezeile beinhaltet keine Zuweisung, sondern nur einen logischen Vergleich zwischen "oSelection.String" und "test". Du wirst also entweder eine Messagebox mit "true" oder "false" als Ergebnis ernten.
heitzig-j hat geschrieben:dann hat es gar keinen Effekt...
Wenn Du keine entsprechende Fehlermeldung bekommst, ist die Eigenschaft aller Voraussicht nach auch nicht Read-Only.
Wenn Du das Schreiben bisher nur mit der weiter oben erwähnten Codezeile probiert hast, dann lass mal das "msgbox" davor weg.

Ist die CurrentSelection in Impress Read-Only?

von heitzig-j » Fr, 06.05.2011 16:13

Ich verzweifle an einem vermeintlich einfachen Problem:

In Impress soll der innerhalb eines viel Text enthaltenen Textfeldes ausgewählte Text umformatiert werden, z.B. andere Schriftart, kursiv, andere Farbe.

Ich kann alle diese Properties LESEN, indem ich z.B. dies tu:

Code: Alles auswählen

oSelection = ThisComponent.getCurrentSelection()
msgbox oSelection.String
msgbox oSelection.CharFontName
msgbox oSelection.CharHeight
msgbox oSelection.CharWeight
msgbox oSelection.CharPosture
msgbox oSelection.CharColor
Dasselbe scheine ich zu bekommen, wenn ich dies tu:

Code: Alles auswählen

oSelection = ThisComponent.getCurrentSelection()
oCursor = oSelection.getText().createTextCursorByRange(oSelection)
msgbox oCursor.String
msgbox oCursor.CharFontName
msgbox oCursor.CharHeight
msgbox oCursor.CharWeight
msgbox oCursor.CharPosture
msgbox oCursor.CharColor
Wenn ich aber irgendwelcher der Properties SCHREIBE, z.B.

Code: Alles auswählen

msgbox oSelection.String = "test"
dann hat es gar keinen Effekt...

Was mache ich falsch?

Nach oben