_WhToHwnd( ), API-Bibliotheksroutine
Gibt den HWND-Wert des Fensters mit dem angegebenen WHANDLE-Fensterhandle zurück.
HWND_WhToHwnd(WHANDLE wh)
WHANDLE wh; /* Window handle. */
Hinweise
Weitere Informationen zum Erstellen einer API-Bibliothek und ihrer Integration in Visual FoxPro finden Sie unter Zugreifen auf die Visual FoxPro-API.
Beispiel
Im folgenden Beispiel wird ein Fenster erstellt und anschließend der Windows-HWND-Wert für das Fenster mit der Callback-Funktion _WhToHwnd( ) bestimmt. Anschließend wird HWND als Argument an eine Windows-Funktion übergeben, um den von _WhToHwnd( ) zurückgegebenen Wert zu verifizieren.
Visual FoxPro-Code
SET LIBRARY TO WHTOHWND
C-Code
#include <windows.h>
#include <pro_ext.h>
void putLong(long n, int width)
{
Value val;
val.ev_type = 'I';
val.ev_long = n;
val.ev_width = width;
_PutValue(&val);
}
FAR WhToHwndEx(ParamBlk FAR *parm)
{
RECT Rect;
HWND hwnd;
WHANDLE wh;
Value val;
wh = _WOpenP(10,10,120,240,CLOSE,WINDOW_SCHEME, (Scheme FAR *) 0,
WO_SYSTEMBORDER);
_WShow(wh);
// Get Windows window handle and use as a parameter
// to a Windows function
hwnd = _WhToHwnd(wh);
GetWindowRect(hwnd, &Rect); // Windows function
_PutStr("\ntop ="); putLong(Rect.top, 5);
_PutStr("\nleft ="); putLong(Rect.left, 5);
_PutStr("\nbottom ="); putLong(Rect.bottom, 5);
_PutStr("\nright ="); putLong(Rect.right, 5);
}
FoxInfo myFoxInfo[] = {
{"ONLOAD", WhToHwndEx, CALLONLOAD, ""},
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
Siehe auch
_WFindTitle( ), API-Bibliotheksroutine | _WOpen( ), API-Bibliotheksroutine | Zugreifen auf die Visual FoxPro-API