Seite 1 von 1
Re: Auf aktuellen Absatz/aktuelle Tabelle zugreifen
Verfasst: Sa, 11.10.2008 12:43
von komma4
Erzeuge einen TextCursor und bewege ihn zum ViewCursor:
Code: Alles auswählen
oViewCursor = _
ThisComponent.getCurrentController().getViewCursor()
oTempTextCursor = _
ThisComponent.getText().createTextCursor()
oTempTextCursor.gotoRange( oViewCursor , FALSE )
Du möchtest etwas ändern/einfügen, sonst würde Dir ja der ViewCursor ausreichen, oder?
sieh' Dir mal den Code aus
DateTime2, Routine
DateTime_setWriter an:
Code: Alles auswählen
If NOT IsEmpty( oViewCursor.TextTable ) Then
print "Cursor in einer Texttabelle"
exit Sub
End If
Hilft das weiter?
Re: [gelöst] Auf aktuellen Absatz/aktuelle Tabelle zugreifen
Verfasst: Sa, 11.09.2010 15:56
von manese
Hallo Winfried, hallo Forum,
gibt es auch eine Möglichkeit,
den Textcursor genau an die Stelle in einer Texttabelle zu setzen, an der der Viewcursor steht?
Im Prinzip bräuchte ich zwischen
If NOT IsEmpty( oViewCursor.TextTable ) Then
und dem
End If
einen Befehl, der genau an der Stelle einen Textcursor generiert.
Wahrscheinlich ist das Problem ganz leicht zu lösen, aber weder "Versuch-macht kluch" noch Literaturrecherche bringen mich wirklich weiter. Der ViewCursor lässt sich nicht wortweise bewegen, und an der oben genannten Stelle kriege ich keinen Textcursor generiert.
Alles Gute
matthias
Re: [gelöst] Auf aktuellen Absatz/aktuelle Tabelle zugreifen
Verfasst: Sa, 11.09.2010 16:11
von manese
Hallo Winfried,
man sollte doch besser alles genau durchlesen, bevor man weiter fragt...
Ich habe die Lösung ohne Probleme in deinem Makro gefunden,
vielen Dank! Ich benutze sie, um ein versehentlich klein geschriebens Wort mit einem großen Anfangsbuchstaben zu versehen:
Code: Alles auswählen
sub Majuskel
Dim oDoc as object : oDoc = ThisComponent
Dim oViewC as object : oViewC = oDoc.getCurrentController().getViewCursor()
Dim oTextC as object
If NOT isEmpty(oViewC.textTable) then
oZelle = oViewC.Cell
oTextC = oZelle.getText().createTextCursorByRange( oViewC )
Else
oTextC = oDoc.text.createTextCursorByRange(oViewC)
Endif
oTextC.gotoStartOfWord(False) : oTextC.goRight(1, True)
Dim sAnf as String : sAnf = oTextC.getString()
sAnf = UCase(sAnf)
oTextC.setString(sAnf, True)
end sub
Alles Gute
matthias