Zur Startseite

JRSpellChecker

Zur Homepage

Vorgehensweise zum Einbinden von JRSpell:

Gehen Sie wie folgt vor, um JRSpell in Ihre Anwendung zu integrieren.

1.

Laden von JRSpell ocx in Ihre Programmierumgebung:

Fügen Sie JRSpell.ocx zu Ihrer Werkzeugleiste hinzu und ziehen sie
anschließend das Steuerelement auf Ihre Form.

Alternativ legen Sie einen Verweis zu JRSpell.ocx und binden das COM Objekt wie folgt

  Set JRSpell1 = CreateObject("JRSpellAx.JRSpell")

Sollte Sie das JRSpell über die ClassID einbinden wollen, verwenden Sie für die aktuelle Version
      CLSID:C631C56C-2600-4EF4-B20D-E92BA360A328

   

Achtung! Sie können ein Projekt das ActiveX Steuerelemente enthält nicht als 64bit-Anwendung kompilieren. Wenn Sie JRSpell z.B in Visual Studio 2008 oder höher einfügen möchten, stellen Sie sicher, dass als Zielplattform X86 eingestellt ist. (Menüpunkt "Erstellen/Konfigurationsmanager")

2.

Properties setzen:


Stellen Sie im Eigenschaftendialog oder z.B. im
Startcode der Form die benötigten Eigenschaften ein. Sie können diese natürlich später zu jedem Zeitpunkt verändern.

    JRSpell1.UILanguage = german
    JRSpell1.SelectionMethod = Sel_BackColor
    JRSpell1.SelectionColor = vbRed

UILanguage: JRSpell hat mehrere interne Dialoge die in folgenden Sprachen zur Verfügung stehen.

    english = 0
    german = 1
    spain = 2
    french = 3
    italian = 4
    netherland = 5

SelectionMethod: folgende Methoden stehen zur Auswahl

    Sel_BackColor = 0   (RTFControl, TX-Textcontrol)
    Sel_DoubleUnderline = 1   (RTFControl, TX-Textcontrol)
    Sel_TwigglyUnderline = 2 (TX-Textcontrol ab V8.0)
    Sel_Forecolor = 3 (RTFControl, TX-Textcontrol)
    Sel_nothing = 10 (Alle)

SelectionColor: Farbwert für die Markierung

Schalten Sie bei Bedarf eine oder mehrere der folgenden Einstellungen ab, die defaultmäßig aktiv sind.

    JRSpell1.IgnoreUppercaseWords     (z.B IFA, NEWSLETTER)
    JRSpell1.IgnoreMixedCaseLetterWords (z.B NewEconomy)
    JRSpell1.IgnoreURL (z.B. www.myurl.de http://myurl.de)
    JRSpell1.IgnoreWordsWithNumbers (z.B. V3.2, Ready2go)

3.

Laden Sie ein JRSpell Wörterbuch:

JRSpell wird mit Wörterbüchern für Deutsch und Englisch ausgeliefert.
Das Laden eines Wörterbuches dauert je nach Größe ca. 1s bis 3s.
Sie sollten deshalb folgendes beachten.

    1. Laden Sie ein Wörterbuch einmalig z.B. beim laden der Form oder Ihrer Anwendung.
    2. Bevor Sie eine Rechtschreibprüfung durchführen, muss das Event WordBookLoadEnd ausgelöst worden sein
    3. Wenn Sie OpenSpellcheckdialog aufrufen, kann der Benutzer dort ein anderes Wörterbuch wählen, warten Sie in diesem Falle ebenfalls auf das Event WordBookLoadEnd.

Um das mitgelieferte deutsche Wörterbuch zu laden setzen Sie

    JRSpell1.WordBookName = "de_de20062.jsp"

    de_de20062.jsp beinhaltet die neue Rechtschreibung
    de_de.jsp beinhaltet die alte Rechtschreibung.
    en_gb.jsp beinhaltet die englische Prüfung.
    en_us.jsp beinhaltet die amerikanische Schreibweisen.

und rufen dann

    JRSpell1.LoadWordbook(LokalWordBook) auf
              (LokalWordBook = 0).

JRSpell1.LoadWordbook liefert true wenn das File gefunden wurde andernfalls false.
Bei Bedarf sollte hier eine entsprechende Meldung ausgegeben oder aber alle weiteren Aktionen zur Rechtschreibkontrolle gesperrt werden.

Wurde das Wörterbuch gefunden wird dieses im Hintergrund geladen und danach das Event WordBookLoadend aufgerufen .

Unter www.jrsoft.de können 18 weitere Wörterbücher geladen werden. Sie können diese manuell in das JRSpell.ocx Verzeichnis kopieren oder über den Wörterbuchdialog hinzufügen.
Die Wörterbücher sind Standardmäßig im Installationspfad von JRSpell.ocx (
commonappdata\JRSpell) gespeichert.
Wenn Sie eine Routine zum kopieren zusätzlicher Wörterbücher schreiben möchten, dann können sie den Pfad über JRSpell1.
GetCurrentPath ermitteln.
Sie können zusätzliche Wörterbücher aber auch mit JRSpell oder Ihrer Anwendung installieren.
Sehen Sie hierzu das Inno-Setup-Projekt Im Installationsverzeichnis von JRSpell an.

Alternativ können Sie Wörterbücher in jedem beliebigen Verzeichnis bereitstellen und von dort öffnen. Geben Sie in diesem Fall den Pfad in JRSpell1.WordBookPath an bevor Sie LoadWordbook aufrufen.

4.

Oder laden Sie das MS-Word Wörterbuch:

JRSpell kann anstelle der lokalen Wörterbücher das aktuelle MS-Word Wörterbuch verwenden.
Für Sie besteht
Programmtechnisch keinerlei Unterschied.


Um das MS-Word Wörterbuch zu laden setzen Sie

    JRSpell1.WordBookName = ""

und rufen dann

    JRSpell1.LoadWordbook(WordWordBook) auf
              (WordWordBook = 1).

JRSpell1.LoadWordbook liefert True wenn das Word-Wörterbuch gefunden wurde, andernfalls False.
Bei Bedarf sollte hier eine entsprechende Meldung ausgegeben oder aber alle weiteren Aktionen zur Rechtschreibkontrolle gesperrt werden.

Wurde das Wörterbuch gefunden wird dieses im Hintergrund geladen und danach das Event WordBookLoadend aufgerufen .

Unter normalen Umständen wissen sie nicht, ob alle Ihre Anwender Word installiert haben.
Folgende Routine lädt wenn möglich das MS-Word-Wörterbuch, andernfalls ein lokales JRSpell-Wörterbuch.

    JRSpell1.WordBookName = ""  
    If JRSpell1.LoadWordbook(WordWordBook) = False Then
        JRSpell1.WordBookName = "de_de20062.jsp"
        JRSpell1.LoadWordbook(LokalWordBook)
    End If

5.

Wort / Text prüfen :

SpellCheckString ist die einfachste Art ein einzelnes Wort oder einen kompletten Text zu prüfen.
Die Funktion erwartet die Parameter "Wort,PrüfeabPosition,PrüfebisPosition" und meldet zurück ob das Wort richtig oder falsch geschrieben ist. Natürlich wirken sich Einstellungen wie

    JRSpell1.IgnoreUppercaseWords     (z.B IFA, NEWSLETTER)
    JRSpell1.IgnoreMixedCaseLetterWords (z.B NewEconomy)
    JRSpell1.IgnoreURL (z.B www.myurl.de http://myurl.de)
    JRSpell1.IgnoreWordsWithNumbers (z.B V3.2, Ready2go)
    JRSpell1.
    CheckGrammar

auf das Ergebnis aus.

    CurrentTestpos&=0
    JRSpell1.SpellCheckString("Hallo", CurrentTestpos,
    len("Hallo"))

Ob das Wort richtig oder falsch geschrieben wurde kann im Falle von SpellCheckString auf verschiedene Arten ausgewertet werden.

    1. CurrentTestpos liefert die Startposition des ersten falsch geschriebenen Wortes andernfalls -1
    2. Mit jedem Wort das JRSpell prüft wird das Event SpellCheckWord aufgerufen. Dort könnte abgefragt werden ob das Wort richtig oder falsch geschrieben wurde.
    3.
    nach jeder erfolgten Prüfung stehen verschiedene Informationen unter JRSpell1.SpellInfo_ bereit, die ausgewertet werden können z.B. JRSpell1.SpellInfo_MisspelledWord <>"".

Ein ganzer String könnte wie folgt getestet werden.


    teststring$ = "Dieser teext wird geprüeft"
    'the jrspell_spellcheckedword event returns the incorrect word
    'teststart returns the first characterpos of a incorrect word. returns -1 if no incorrect word was found
    'testend
    returns the last characterpos of a incorrect word
    'check the complete string
    teststart& = 0
    testend& =
    Len(teststring$)

    do
    x = JRSpell1.SpellCheckString(
    teststring$, teststart&, testend&)
    'if any incorrect word was found, then search for the next one
    If JRSpell1.SpellInfo_MisspelledWord
    <> "" Then
        MsgBox "
    -->> " + JRSpell1.SpellInfo_MisspelledWord
       
    teststart& = testend&
     
    End If
    loop
    while teststart&<>-1

6.

Wort mit Dialog korrigieren:

OpenSpellCheckDialog öffnet einen Korrekturdialog zum korrigieren eines einzelnen Wortes. Der Dialog liefert False zurück wenn der Anwender "Schließen" wählt, ansonsten True.


Vor Aufruf des Dialoges kann dessen Funktionsumfang über Flags eingestellt werden.

    'set options for the correction dialogue
    JRSpell1.CorrectionDialogActions = SearchNextAfterClickList + ShowAddButtonLokalWordBook + ShowAddButtonMSWord + ShowChangeButton + ShowIgnoreAllButton + ShowChangeAllButton

        Mögliche Flags mit deren Werten
        ShowChangeButton = 1
        ShowAddButtonMSWord = 2
        ShowAddButtonLokalWordBook = 4
        ShowIgnoreAllButton = 8
        SearchNextAfterClickList = 16
        ShowChangeAllButton = 32
        UseSpellAsyouType = 128 (nicht relevant)
        UseLeftMouseButtonSpell = 256 (nicht relevant)
        ShowModalForm = 512

Rufen Sie erst dann den Dialog auf

    Abbruch = JRSpell1.OpenSpellCheckDialog("Text")

Wenn der Anwender ein Wort korrigiert wird das Event ChangeWord aufgerufen. Sie müssen hier das Wort manuell ersetzen. Folgende Informationen stehen Ihnen in ChangeWord zur Verfügung

    JRSpell1.SpellInfo_MisspelledWord ->Das übergebene Wort
    JRSpell1.SpellInfo_SelektedWord ->Das vom Benutzer gewählte Wort
    JRSpell1.SpellInfo_StartposOffset ->Längenunterschied Altes/Neues Wort

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
AddWordToWordbook:

Sollte der Anwender im Dialog ein Wort in das Wörterbuch aufnehmen werden Sie über das Event AddWordToWordbook informiert.

Autokorrektur:

Wird nicht unterstützt

7.

Wort / Text mit Dialog prüfen/korrigieren:

SpellCheckStringWithDialog öffnet einen Korrekturdialog und gibt den vom Anwender korrigierten Text zurück. Der Korrekturdialog unterstützt Popup-Korrektur, SpellAsYouType und die Autokorrektur.

Vor Aufruf des Dialoges kann dessen
Funktionsumfang über Flags eingestellt werden.

    'set options for the correction dialogue
    JRSpell1.CorrectionDialogActions = UseLeftMouseButtonSpell + UseSpellAsyouType + SearchNextAfterClickList + ShowAddButtonLokalWordBook + ShowAddButtonMSWord + ShowChangeButton + ShowIgnoreAllButton + ShowChangeAllButton

        Mögliche Flags mit deren Werten
        ShowChangeButton = 1
        ShowAddButtonMSWord = 2
        ShowAddButtonLokalWordBook = 4
        ShowIgnoreAllButton = 8
        SearchNextAfterClickList = 16
        ShowChangeAllButton = 32
        UseSpellAsyouType = 128
        UseLeftMouseButtonSpell = 256
        ShowModalForm = 512

Rufen Sie erst dann den Dialog auf

    Korrigiertertext = JRSpell1.SpellCheckStringWithDialog("Prüfe diesen Text")

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
AddWordToWordbook:

Sollte der Anwender im Dialog ein Wort in das Wörterbuch aufnehmen werden Sie über das Event AddWordToWordbook informiert.

Autokorrektur:

Wenn Sie die Autokorrekturfunktion nicht dauernd eingeschaltet haben und trotzdem nutzen möchten, dann aktivieren Sie diesen vor öffnen des Dialoges mit

    JRSpell1.AutoCorrectionOn

Und deaktivieren Sie diese, wenn Sie nicht dauernd aktiv sein soll nach schließen des Dialoges mit

    JRSpell1.AutoCorrectionOff

8.

Dokument prüfen :

SpellCheckDocument prüft sehr schnell anhand des Window-Handles den Textinhalt von Steuerelementen die auf der Textbox, dem RTF-Control, dem NetRtf-Control oder dem TX-Textcontrol basieren.
Beim RTF-Control und dem TX-Textcontrol kann hierbei eine Markierung der falsch geschriebenen Wörter vorgenommen werden.
Jedes geprüfte Wort ruft das Event SpellCheckWord auf.
Nach erfolgter Prüfung informiert das Event DocumentSpellChecked über die Anzahl der geprüften Wörter und die Anzahl der falsch geschriebenen Wörter.
Wenn die
Autokorrektur aktiviert ist werden Wörter wenn möglich sofort korrigiert.

Wenn Sie noch keine SelectionMethod festgelegt haben, setzen Sie diese

    'Bei der Textbox wirkt sich diese Einstellung nicht aus.
    JRSpell1.SelectionMethod = Sel_BackColor
    JRSpell1.SelectionColor = vbRed

Rufen Sie dann die Funktion auf

    JRSpell1.SpellCheckDocument MyControl.hWnd, Rtf_Control
        Mögliche Optionen für den bind Parameter.
        Rtf_Control = 1
        Text_Box = 2
        TX_Textcontroll = 3
        NetRtf_Control = 11

Autokorrektur:

Wenn Sie die Autokorrekturfunktion nicht dauernd eingeschaltet haben und trotzdem nutzen möchten, dann aktivieren Sie diesen vor prüfen des Dokumentes mit

    JRSpell1.AutoCorrectionOn

Und deaktivieren Sie diese, wenn Sie nicht dauernd aktiv sein soll nach der Prüfung

    JRSpell1.AutoCorrectionOff

Die Autokorrektur erfolgt über das Event ChangeWord. Sie müssen hier das Wort ersetzen. Da es bereits angewählt ist reicht folgende Programmzeile.

Private Sub JRSpell1_ChangeWord(newword As String)
    RichTextBox1.SelText =
newword
End Sub

9.

Selektierten Text prüfen :

SpellCheckSelText Entspricht dem vorherigen SpellCheckDocument, prüft jedoch nur den bereits selektierten Text und ruft nach beenden das Event SelectedTextSpellChecked auf.

10.

Dokument korrigieren :

SpellCheckWithDialog prüft sehr schnell anhand des Window-Handles den Textinhalt von Steuerelementen die auf der Textbox, dem RTF-Control, dem NetRtf-Control oder dem TX-Textcontrol basieren. Bei jedem falsch geschriebenen Wort im Dokument öffnet sich ein Korrekturdialog. Wenn die Autokorrektur aktiviert ist wird das Wort wenn möglich sofort korrigiert.

Vor Aufruf des Dialoges kann dessen Funktionsumfang über Flags eingestellt werden.

    JRSpell1.CorrectionDialogActions = SearchNextAfterClickList + ShowAddButtonLokalWordBook + ShowAddButtonMSWord + ShowChangeButton + ShowIgnoreAllButton + ShowChangeAllButton

      Mögliche Flags mit deren Werten
      ShowChangeButton = 1
      ShowAddButtonMSWord = 2
      ShowAddButtonLokalWordBook = 4
      ShowIgnoreAllButton = 8
      SearchNextAfterClickList = 16
      ShowChangeAllButton = 32
      UseSpellAsyouType = 128
      UseLeftMouseButtonSpell = 256
      ShowModalForm = 512

Rufen Sie erst dann die Korrekturfunktion auf

    JRSpell1.SpellCheckWithDialog mycontrol.hWnd, 0, Rtf_Control

      Mögliche Optionen für den bind Parameter.
      Rtf_Control = 1
      Text_Box = 2
      TX_Textcontroll = 3
      NetRtf_Control = 11

Wenn der Anwender ein Wort korrigiert wird das Event ChangeWord aufgerufen. Sie müssen hier das Wort ersetzen. Da es bereits angewählt ist reicht folgende Programmzeile.

    Private Sub JRSpell1_ChangeWord(newword As String)
        RichTextBox1.SelText =
    newword
    End Sub

Wenn der Anwender die Prüfung abbricht, oder die Prüfung beendet ist wird das Event SpellCheckWithDialogEnd ausgelöst.

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
SpellCheckWord:

Jedes geprüfte Wort ruft das Event SpellCheckWord auf.

AddWordToWordbook:
Sollte der Anwender im Dialog ein Wort in das Wörterbuch aufnehmen werden Sie über das Event AddWordToWordbook informiert.

ScollIntoPos und SpellCheckNextSelectedWord:
Wird ein falsch geschriebenes Wort erkannt öffnet der Korrekturdialog.
Das falsch geschriebene Wort wird selektiert und das Event ScollIntoPos ausgelöst. (Sie könnten hier bei Bedarf die
Scrollposition auswerten/ändern)
Anschließend wird das Event SpellCheckNextSelectedWord ausgelöst, welches über die Anzahl geprüfter und die Anzahl falsch geschriebener Wörter informiert. Weitere Infos können an dieser Stelle durch Auswerten von

    JRSpell1.SpellInfo_MisspelledWord
    JRSpell1.SpellInfo_SelStartpos
    JRSpell1.SpellInfo_SelLength

abgerufen werden.

Autokorrektur:

Wenn Sie die Autokorrekturfunktion nicht dauernd eingeschaltet haben und trotzdem nutzen möchten, dann aktivieren Sie diesen vor prüfen des Dokumentes mit

    JRSpell1.AutoCorrectionOn

Und deaktivieren Sie diese, wenn Sie nicht dauernd aktiv sein soll nach der Prüfung

    JRSpell1.AutoCorrectionOff

Die Autokorrektur erfolgt ebenfalls über das Event ChangeWord

11.

Fehlermarkierung / Autokorrektur direkt bei Texteingabe (SpellAsYouType :

SpellCheckLastInput liefert anhand des Window-Handles das Ergebnis für die Rechtschreibkontrolle während der Eingabe. Für Steuerelemente die auf der Textbox, dem RTF-Control, dem NetRtf-Control oder dem TX-Textcontrol basieren. Falsch geschriebener Text wird entsprechend den Einstellungen markiert (nicht bei der Textbox) bzw. wenn die Autokorrektur aktiviert ist sofort korrigiert.

Üblicherweise erfolgt die Kontrolle im KeyUp Event des Steuerelements. Die Prüfung wird immer nur dann durchgeführt, wenn eine Worteingabe beendet ist. Dies kann z.B. bei betätigen der Leertaste , Eingabe von Punkt oder Komma etc. und betätigen von Steuertasten vermutet werden.

Eine Prüfung im KeyUp Event kann also z.B von folgender Bedingung abhängig gemacht werden.

    Select Case KeyCode
     
    Case 32, 13, 40, 37, 38, 39, 188, 189, 190, 49, 50

Nur wenn eine dieser Tasten gedrückt wurde, erfolgt das Überprüfen des Wortes

Wenn Sie noch keine SelectionMethod festgelegt haben, setzen Sie diese

    'Bei der Textbox wirkt sich diese Einstellung nicht aus.
    JRSpell1.SelectionMethod = Sel_BackColor
    JRSpell1.SelectionColor = vbRed

    oldsel = mycontrol.SelStart

Rufen Sie dann die Funktion auf

    ergebnis = JRSpell1.SpellCheckLastInput(mycontrol.hWnd, Rtf_Control)

      Mögliche Optionen für den bind Parameter.
      Rtf_Control = 1
      Text_Box = 2
      TX_Textcontroll = 3
      NetRtf_Control = 11

Da bei einer Textbox keine Markierung erfolgt, kann dort im einfachsten Fall bei Ergebnis=False ein Piepton ausgegeben werden.

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
TextSpellChecked:
Wird ausgelöst wenn Spellchecklastinput beendet ist.
SpellCheckWord:
Spellchecklastinput prüft und markiert auch das Wort vor und nach dem aktuell eingegebenen.
Aus diesem Grund wird SpellCheckWord mehrfach aufgerufen.

Autokorrektur:

Wenn Sie die Autokorrekturfunktion nicht dauernd eingeschaltet haben und trotzdem nutzen möchten, dann aktivieren Sie diesen vor Aufruf von SpellCheckLastInput mit

    JRSpell1.AutoCorrectionOn

Und deaktivieren Sie diese, wenn Sie nicht dauernd aktiv sein soll nach der Prüfung mit

    JRSpell1.AutoCorrectionOff

Die Autokorrektur erfolgt über das Event ChangeWord. Sie müssen hier das Wort ersetzen. Da es bereits angewählt ist reicht folgende Programmzeile.

    Private Sub JRSpell1_ChangeWord(newword As String)
        RichTextBox1.SelText =
    newword
    End Sub

12.

PopupKorrektur direkt bei Texteingabe :

PopupCharPos prüft anhand des Window-Handles das Wort an der angegebenen Cursorposition und öffnet bei Bedarf ein Popupmenü mit Vorschlägen. Die Funktion ist für Steuerelemente die auf der Textbox, dem RTF-Control, dem NetRtf-Control oder dem TX-Textcontrol basieren.

Als Erweiterung der vorhergehenden SpellAsYouType Funktion kann zum Beispiel wie folgt eine Popup-Korrektur integriert werden.

Das Popupmenü wird nur aufgerufen wenn das letzte Ergebnis falsch war und es sich nicht um das gleiche Wort handelt wie beim letzten Aufruf.

    If ergebnis = False And Lastcheckedword <> JRSpell1.SpellCheckLastInput_GetWord Then

rufen Sie dann die Funktion auf

        JRSpell1.PopupCharPos mycontrol.SelStart, mycontrol.hWnd, Rtf_Control

        Mögliche Optionen für den bind Parameter.
        Rtf_Control = 1
        Text_Box = 2
        TX_Textcontroll = 3
        NetRtf_Control = 11

Korrigieren Sie anschließend die Startposition der Selektierung, da eventuell eine Korrektur durchgeführt und das neue Wort eine andere Länge hat. Den Korrekturwert liefert SpellInfo_StartposOffset.

        mycontrol.SelStart = oldsel + JRSpell1.SpellInfo_StartposOffset
       
    mycontrol.SetFocus
       
    Lastcheckedword = JRSpell1.SpellCheckLastInput_GetWord

    End If

Wenn der Anwender ein Wort korrigiert, wird das Event ChangeWord aufgerufen. Sie müssen hier das Wort ersetzen. Da es bereits angewählt ist reicht folgende Programmzeile.

    Private Sub JRSpell1_ChangeWord(newword As String)
        RichTextBox1.SelText =
    newword
    End Sub

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
AddWordToWordbook:

Sollte der Anwender im Popupmenü ein Wort in das Wörterbuch aufnehmen werden Sie über das Event AddWordToWordbook informiert.

13.

PopupKorrektur beim anklicken eines Wortes :

PopupMousePos prüft anhand des Window-Handles das Wort an der angegebenen Mausposition und öffnet bei Bedarf ein Popupmenü mit Vorschlägen. Die Funktion ist für Steuerelemente die auf der Textbox, dem RTF-Control, dem NetRtf-Control oder dem TX-Textcontrol basieren.

Üblicherweise erfolgt die Kontrolle im MouseDown Event des Steuerelements in Abhängigkeit des betätigten Buttons.

    If Button = 2 Then

rufen Sie die Funktion auf

      JRSpell1.PopupMousePos x, y, mycontrol.hWnd, Rtf_Control

        Mögliche Optionen für den bind Parameter.
        Rtf_Control = 1
        Text_Box = 2
        TX_Textcontroll = 3
        NetRtf_Control = 11

Wenn der Anwender ein Wort korrigiert, wird das Event ChangeWord aufgerufen. Sie müssen hier das Wort ersetzen. Da es bereits angewählt ist reicht folgende Programmzeile.

    Private Sub JRSpell1_ChangeWord(newword As String)
        RichTextBox1.SelText =
    newword
    End Sub

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
AddWordToWordbook:

Sollte der Anwender im Popupmenü ein Wort in das Wörterbuch aufnehmen werden Sie über das Event AddWordToWordbook informiert.

Hinweis:
PopupMousePos funktioniert nicht bei Tx-Textcontrol dort wird ab V9 PopupCharPos
wie folgt verwendet

    charpos = TXTextControl1.InputPosFromPoint(x, y)
    JRSpell1.PopupCharPos
charpos, TXTextControl1.hWnd, TX_Textcontroll

 

14.

Korrekturdialog beim anklicken eines Wortes :

MisspelledWordFromMousePos prüft anhand des Window-Handles das Wort an der angegebenen Mausposition und gibt dieses sofern es falsch geschrieben ist zurück. Die Funktion ist für Steuerelemente die auf der Textbox, dem RTF-Control, dem NetRtf-Control oder dem TX-Textcontrol basieren.

Üblicherweise erfolgt die Kontrolle im MouseDown Event des Steuerelements in Abhängigkeit des betätigten Buttons.

    If Button = 1 Then

rufen Sie die Funktion auf

    xword = JRSpell1.MisspelledWordFromMousePos(x, y, mycontrol.hWnd, Rtf_Control)  

        Mögliche Optionen für den bind Parameter.
        Rtf_Control = 1
        Text_Box = 2
        TX_Textcontroll = 3
        NetRtf_Control = 11

wenn die Funktion ein Wort zurückliefert, dann den Korrekturdialog mit diesem Wort öffnen

    If xword <> "" Then
          JRSpell1.OpenSpellCheckDialog
    xword
    End If

Wenn der Anwender ein Wort korrigiert, wird das Event ChangeWord aufgerufen. Sie müssen hier das Wort ersetzen. Da es bereits angewählt ist reicht folgende Programmzeile.

    Private Sub JRSpell1_ChangeWord(newword As String)
        RichTextBox1.SelText =
    newword
    End Sub

Für Erweiterte Auswertungen / Funktionen stehen folgende Events zur Verfügung:
AddWordToWordbook:

Sollte der Anwender im Dialog Wort in das Wörterbuch aufnehmen werden Sie über das Event AddWordToWordbook informiert.

Hinweis:
MisspelledWordFromMousePos funktioniert nicht bei Tx-Textcontrol dort wird ab V9 MisspelledWordFromCharPos
wie folgt verwendet

    charpos = TXTextControl1.InputPosFromPoint(x, y)
    xword = JRSpell1.MisspelledWordFromCharPos(charpos, TXTextControl1.hWnd, TX_Textcontroll)

15.

Autokorrekturliste bearbeiten:

OpenWordBookDialog Das bearbeiten der Autokorrekturliste kann im internen Dialog erfolgen.
Da der Aufruf über den
Wörterbuchdialog erfolgt können Sie dort bei Bedarf alle anderen Funktionen über die Flags abschalten.

Vor Aufruf des Dialoges kann dessen Funktionsumfang über Flags eingestellt werden.

    JRSpell1.DictionaryDialogActions = HideAddDictionaryButton + DisableWordbookList + AllowEditAutoCorrection

      Mögliche Flags:
      AllowEnableMSWordDictionary = 1
      AllowEnableLokalDictionary = 2
      AllowEditUserDictionary = 4
      AllowEditAutoCorrection = 8
      DisableWordbookList = 16
      HideAddDictionaryButton = 32

Öffnen Sie dann den Dialog

    JRSpell1.OpenWordBookDialog

Über GetAutoCorrPath, GetAutoCorrList und SetAutoCorrList können Sie die Liste auch per Code verändern.