Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
PUBLIC oForm
oForm = createobject("clsspellcheck")
oForm.show()
DEFINE CLASS clsspellcheck AS form
Autocenter = .T.
Top = 0
Left = 0
Height = 493
Width = 375
DoCreate = .T.
Caption = "WORD SPELLCHECKER"
Name = "Form1"
ADD OBJECT edit1 AS editbox WITH ;
Height = 372, ;
Left = 12, ;
TabIndex = 2, ;
Top = 84, ;
Width = 348, ;
ControlSource = "", ;
Name = "Edit1"
ADD OBJECT command1 AS commandbutton WITH ;
Top = 48, ;
Left = 276, ;
Height = 27, ;
Width = 84, ;
Caption = "Spell Check", ;
TabIndex = 1, ;
Name = "Command1"
ADD OBJECT label1 AS label WITH ;
AutoSize = .T., ;
BackStyle = 0, ;
Caption = "Double-click inside Editbox or click Spell Check button", ;
Height = 17, ;
Left = 38, ;
Top = 462, ;
Width = 297, ;
TabIndex = 5, ;
ForeColor = RGB(0,0,255), ;
Name = "Label1"
ADD OBJECT label3 AS label WITH ;
WordWrap = .T., ;
BackStyle = 0, ;
Caption = "Special thanks and credit to http://www.foxite.com/archives/0000020310.htm", ;
Height = 37, ;
Left = 12, ;
Top = 47, ;
Width = 264, ;
TabIndex = 7, ;
Name = "Label3"
PROCEDURE findword
LOCAL lcPath, lcResult, lcFileName, lcRetVal, lcCurdir, lnHandle, llRetVal
lcPath = space(0)
lcResult = space(255)
llRetVal = .F.
lcFileName = ADDBS(FullPath( Curdir()))+sys(3)+[.doc]
lnhandle = fcreate(lcFileName,0)
fclose(lnHandle)
DECLARE INTEGER FindExecutable in shell32 string @lcFileName, string @lcPath, string @lcResult
IF FindExecutable( @lcFileName, @lcpath, @lcResult) > 32
IF [WINWORD] $ Upper(lcResult)
llRetVal = .T.
ENDIF
ENDIF
erase lcFileName
return llRetVal
ENDPROC
PROCEDURE Init
LOCAL cString
cString = "On the Product Download page, we haave updated our VFPCOM utility " + ;
"to fully support Visual FoxPro 8.0. It has the same feetures and functionality " + ;
"as the Visual FoxPro 7.0 version, but is now fully compatible with " + ;
"Visual FoxPro 8.0. The VFPCOM utility allows you to extend Visual " + ;
"FoxPro interoperability with other COM and ADO components. This utility " + ;
"is a COM server that provides additional functionality when you use ADO " + ;
"and access COM events with your Visual FoxPro 8.0 applications." + CHR(13) + ;
"As I mentioned in my last letter, Microsoft has reeleased Visual FoxPro 8.0. " + ;
"We are now busy working on Service Pack 1 (SP1) for Visual FoxPro 8.0. SP1 " + ;
"for Visual FoxPro 8.0 is in beta now. I said that SP1 for Visual FoxPro 8.0 " + ;
"would be released sometime in Setpember 2003 online for free download. " + ;
"In our efforts to ensure quality and stability, it appears we will complete " + ;
"SP1 the last week of September, which means it will actually be available " + ;
"online for free download in early October." + CHR(13) + ;
"Communities make it possible to get answers to your technical questions " + ;
"concerning Visual FoxPro 8.0. You'll save time by tapping into a community " + ;
"of peers who are building applications similar to yours. In addition, we've " + ;
"collected technical support options and information on training and events. " + ;
"And it's all free. For a great resource reference for related Visual FoxPro " + ;
"community resources, refer to the Visual FoxPro Community Resource listings."
thisform.edit1.Value = cString
ENDPROC
PROCEDURE edit1.DblClick
LOCAL loWord, lnOldMousePointer
lnOldMousePointer = this.Mousepointer
this.Mousepointer = 11
IF DODEFAULT()
IF NOT thisform.FindWord()
Messagebox("Word not installed on this machine...",48,_screen.caption)
return .F.
ELSE
WAIT WINDOW NOWAIT "Spellchecking starts..."+CHR(13)+;
" Please wait"
IF VARTYPE( loWord ) <> 'O'
loWord = CREATEOBJECT('word.application')
ENDIF
IF VARTYPE ( loWord ) = "O"
loword.windowstate = 0
loWord.move(1000,1000)
loWord.documents.ADD()
WITH loWord
.documents(1).content = this.VALUE
WAIT WINDOW NOWAIT "Spellchecking has started..."+CHR(13)+;
" Please wait"
.documents(1).CheckSpelling()
.SELECTION.WholeStory
IF .selection.text <> this.VALUE
WAIT WINDOW NOWAIT "Spellchecking finished"+CHR(13)+;
"Your text will be replaced"
this.VALUE = .SELECTION.TEXT
REPLACE (this.CONTROLSOURCE) WITH (this.VALUE)
ELSE
WAIT WINDOW NOWAIT "Spellchecking finished"+CHR(13)+;
" No typos found"
ENDIF
.documents(1).CLOSE(.F.)
.QUIT
ENDWITH
loWord = .NULL.
RELEASE loWord
ELSE
MESSAGEBOX("Sorry, I can not start Word",48,_SCREEN.CAPTION)
RETURN .F.
ENDIF
WAIT CLEAR
ENDIF
ENDIF
ENDPROC
PROCEDURE command1.Click
thisform.edit1.DblClick()
ENDPROC
ENDDEFINE