ich habe aus dem Handbuch diesen code für die Rechtschreibprüfung. Beim Ausführen zeigt er mit aber einen Zeichenfehler
und sprinkt mit dem Kurser auf die,.
StelleRtrimStr( stWort, ","), "."), "?"), "!"), "."),)
LO Version: 6.0.6.2 (x64) Win10
Wer kann helfen? Was mach ich Falsch?
LG
Code: Alles auswählen
SUB MarkierungFehlerDirekt(oEvent AS OBJECT)
GlobalScope.BasicLibraries.LoadLibrary("Tools")
DIM aProp() AS NEW com.sun.star.beans.PropertyValue
DIM oLinuSvcMgr AS OBJECT
DIM oSpellChk AS OBJECT
DIM oFeld AS OBJECT
DIM arText()
DIM stWort AS STRING
DIM inlenWort AS INTEGER
DIM ink AS INTEGER
DIM i AS INTEGER
DIM oCursor AS OBJECT
DIM stText AS OBJECT
oLinguSvcMgr = createUnoService("com.sun.star.linguistic2.LinguServiceManager")
IF NOT IsNull(oLinguSvcMgr) THEN
oSpellChk = oLinguSvcMgr.getSpellChecker()
END IF
oFeld = oEvent.Source.Model
ink = 0
IF oEvent.KeyCode = 1280 OR oEvent.KeyCode = 1284 THEN
stText = Join(Split(oFeld.Text,CHR(10))," ")
arText = Split(RTrim(oFeld.Text)," ")
FOR i = LBound(arText) TO UBound(arText)
stWort = arText(i)
inlenWort = len(stWort)
stWort = Trim( RtrimStr( RtrimStr( RtrimStr( RtrimStr(
RtrimStr( stWort, ","), "."), "?"), "!"), "."),)
IF stWort <> "" THEN
oCursor = oFeld.createTextCursor()
oCursor.gotoStart(false)
oCursor.goRight(ink,false)
oCursor.goRight(inLenWort,true)
If Not oSpellChk.isValid(stWort, "de", aProp()) Then
oCursor.CharUnderline = 9
oCursor.CharUnderlineHasColor = True
oCursor.CharUnderlineColor = RGB(255,51,51)
ELSE
oCursor.CharUnderline = 0
END IF
END IF
ink = ink + inLenWort + 1
NEXT
END IF
END SUB