ID: Q109060
2.50 2.50a 2.50b WINDOWS
The information in this article applies to:
The program below demonstrates how you can use FOXTOOLS.FLL to call Windows Software Development Kit (SDK) functions that switch the active application window on the desktop.
* Switch test program
*
* Example of using FOXTOOLS.FLL to make Windows calls to switch
* the active application window.
*
* This program uses FindWindow to retrieve the HWND of a particular
* application's window and SetActiveWindow to make that the active
* window.
*
* Then a DO loop is used to keep that application active until another
* call is made to return the last window (which should be FoxPro) to
* active status.
*
* Uses FoxTools library for generic DLL access.
SET LIBRARY TO SYS(2004)+"foxtools.fll" ADDITIVE
* FindWindow takes two parameters and returns the HWND of the
* application if it was found.
getwind = regfn("FindWindow", "CC", "I")
* SetActiveWindow takes the HWND of the desired application and returns
* the HWND of the last active application.
setactwind = regfn("SetActiveWindow", "I", "I")
* Set the first parameter of the call to getwind to 0 as null.
wclass=0
winname="Program Manager"
pmhand=callfn(getwind,wclass ,winname)
* If the call was not successful don't try to switch the windows.
IF pmhand<>0
WAIT WINDOW "Switching to PM and back after an interval." NOWAIT
lastwind=callfn(setactwind,pmhand)
ii=1
DO WHILE ii<500000
ii=ii+1
ENDDO
lastwind=callfn(setactwind,lastwind)
ELSE
WAIT WINDOW "Cannot find that window"
ENDIF
Additional reference words: FoxWin 2.50 2.50a 2.50b foxtools fll
KBCategory:
KBSubcategory: FxprgFoxtools
Keywords : kbcode FxprgFoxtools
Version : 2.50 2.50a 2.50b
Platform : WINDOWS
Last Reviewed: May 22, 1998