* PROCEDURE cmdcheckspelling.CLICK
*~~~~~~~~~~~~~~~~~~~~~
* PROCEDURE cmdcheckspelling.CheckSpelling
*
* AUTHOR: Trevor Hancock, Microsoft Corporation
* CREATED : 08/22/00 12:03:46 PM
*
* ABSTRACT: Automates MS Word to check the spelling of text in
* THISFORM.edtTextToCheck
* ACCEPTS: Nothing
* RETURNS: Nothing
*~~~~~~~~~~~~~~~~~~~~~
IF TYPE([goWord]) # [O] && Check if you have already instantiated Word
IF !THISFORM.FindWord() && You don't have Word up, so let's locate it.
MESSAGEBOX([Microsoft Word no encontrado.], 0,[Aviso])
RETURN .F.
ENDIF
*!* Change the mouse pointer for all form controls to indicate processing (opening Word)
WITH THISFORM
* .cmdCheckSpelling.MOUSEPOINTER = 11
* .edtTextToCheck.MOUSEPOINTER = 11
.MOUSEPOINTER = 11
ENDWITH
PUBLIC goWord, goWordDoc && Public vars for Word and Document1 in Word.
goWord = CREATEOBJECT([WORD.APPLICATION]) && Create Word
WITH goWord
.WINDOWSTATE= 0 && wdWindowStateNormal (needs to be Normal before you can move it)
* .MOVE(1000,1000) && Move the window out of view
goWordDoc = .Documents.ADD
ENDWITH
*!* Change mouse pointers back
WITH THISFORM
* .cmdCheckSpelling.MOUSEPOINTER = 0
* .edtTextToCheck.MOUSEPOINTER = 0
.MOUSEPOINTER = 0
ENDWITH
ENDIF
WITH goWordDoc
.Content.TEXT = ALLTRIM(THISFORM.Pf.Pg1.Caja_Concepto.VALUE)
.ACTIVATE
IF .SpellingErrors.COUNT > 0
.CHECKSPELLING
ELSE
=MESSAGEBOX([Corrección ortográfica completa. No se encontraron errores.],0,[Ortografía])
ENDIF
*!* For some reason, Word likes to make itself visible here. Keep it hidden...
goWord.VISIBLE = .F.
THISFORM.Pf.Pg1.Caja_Concepto.VALUE = .Content.TEXT
ENDWITH
IF TYPE([goWord]) = [O]
IF TYPE([goWordDoc]) = [O]
goWordDoc.SAVED = .F.
goWordDoc.CLOSE(0)
ENDIF
goWord.QUIT
ENDIF
RELEASE goWord, goWordDoc
ThisForm.Pf.Pg1.Caja_Concepto.setfocus