Hallo zusammen,
ich bastle gerade an einem Vokabeltrainer auf Basis einer HSQL Datenbank herum. Da hier die Vokabeln (durch meinen noch nicht besonders sprachkundigen Sohn) frei eingegeben werden können, werden Tippfehler und Rechtschreibschwächen bei der Eingabe (also falsch) in die Datenbank übernommen.... Leider habe ich bisher keine Möglichkeit gefunden den Eingabestring vor dem Speichern in der Datenbank (oder innerhalb einer Datenbanktabelle)auf korrekte Schreibweise zu prüfen (quasi wie die Prüfung im Writer bei Calc). Den Umweg alles über den Export in ein Writer Dokument zu prüfen wollte ich mir eigentlich sparen....
Meine Versuche über den Makrorekorder die Rechtschreibprüfung anzusprechen sind über den Dispatcher gescheitert. Es wird im Writer ledglich die allgemeine Rechtschreibprüfung aufgerufen (d.h. der Dialog) - das einzelne Wort habe ich nicht ansprechen können und folglich auch keine Rückmeldung erzeugen können....
Wer hat einen Ansatz für mich?
Gruss und Dank
sarotti
gelöst:Rechtschreibprüfung-String vor Speichern in DB prüfen
Moderator: Moderatoren
Re: gelöst:Rechtschreibprüfung-String vor Speichern in DB prüfen
Hallo zusammen,
habe beim weiteren Stöbern noch mal bei Andrew Pitonyak vorbeigeschaut... SUPER QUELLE!!!!
Hier die auf seinen Hinweisen basierende (modifizierte) Lösung:
Vielleicht hilft es ja dem einen oder anderen
Gruß
sarotti
habe beim weiteren Stöbern noch mal bei Andrew Pitonyak vorbeigeschaut... SUPER QUELLE!!!!
Hier die auf seinen Hinweisen basierende (modifizierte) Lösung:
Code: Alles auswählen
sub Spellcheck
Dim s() As Variant
Dim vReturn As Variant, i As Integer
Dim emptyArgs(0) as new com.sun.star.beans.PropertyValue
Dim aLocale As New com.sun.star.lang.Locale
aLocale.Language = "en"
aLocale.Country = "GB"
s = Array("xray", "anesthesiologist","Pitonyak", "misspell")
'http://api.openoffice.org/common/ref/com/sun/star/linguistic2/XSpellChecker.html
Dim vSpeller As Variant
vSpeller = createUnoService("com.sun.star.linguistic2.SpellChecker")
For i = LBound(s()) To UBound(s())
vReturn = vSpeller.isValid(s(i), aLocale, emptyArgs())
if vReturn = False then
vReturnS= vSpeller.spell(s(i), aLocale, emptyArgs())
sAlternativen=vReturnS.Alternatives
for a=0 To UBound(sAlternativen)
sAlternative=sAlternative+vReturnS.Alternatives(a)+chr(13)
next
end if
MsgBox "Rechtschreibprüfung des Wortes '" & s(i) & "' ergibt: " & vReturn &chr(13)&chr(13)& sAlternative
sAlternative=""
Next
end sub
Gruß
sarotti
Re: gelöst:Rechtschreibprüfung-String vor Speichern in DB prüfen
Hi, ist schon ne Weile her. Leider hat der Vokabeltrainer genau beim "Spellcheck" einen Fehler und läuft in einer Endlosschleife. Wollte ich noch immer mal herausmachen. Ansonsten funktioniert das Ding ganz ordentlich. Ich muss mal schauen, ob ich es hochladen kann
. Also wer Lust auf basteln hat ist herzlich eingeladen sich bei der Fehlerbeseitigung zu beteiligen.Gruß Sarotti
. Also wer Lust auf basteln hat ist herzlich eingeladen sich bei der Fehlerbeseitigung zu beteiligen.Gruß Sarotti
Re: gelöst:Rechtschreibprüfung-String vor Speichern in DB prüfen
...hier der Vokabeltrainer...
Gruß
sarotti
Gruß
sarotti
- Dateianhänge
-
- VokabelTraining.odb
- (168 KiB) 103-mal heruntergeladen