#include "lvkrn.h"
L_LVKRN_API L_INT L_VecAttachToWindow(hWnd, pVector, dwFlags)
L_HWND hWnd; |
window handle |
pVECTORHANDLE pVector; |
pointer to a vector handle |
L_UINT32 dwFlags; |
flags |
Attaches a vector handle to a window.
| Parameter | Description | |
| hWnd | Handle of the window to which the vector handle will be attached. | |
| pVector | Pointer to a vector handle that will be attached to the window specified in hWnd. | |
| dwFlags | Flags that modify the vector engine. Possible values are: | |
| Value | Meaning | |
| VECTOR_ENGINE_DOUBLEBUFFER | Use double buffering for flicker-free screen updates. | |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
This function will attach a vector handle to a window handle. All subsequent changes to the vector image will be reflected on the window.
Note: |
When you copy one vector to another using L_VecCopy, and the source vector is attached to a window, the destination vector will NOT be attached to the same window automatically. |
You can draw on the surface of any window using L_VecPaint, but to use double buffering, you must attach the vector handle to a window.
Required DLLs and Libraries
LVKRN For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Functions: |
This example will assign a window handle to a vector handle.
#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName/* This is the window procedure of the attached window. */LRESULT WINAPI WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam){VECTORHANDLE Vector; /* Vector handle. */L_INT nRet; /* return value. */PAINTSTRUCT PaintStruct;HDC hdc;RECT rect;switch(message){case WM_CREATE:/* Load an image into the vector handle. */nRet = L_VecLoadFile( MAKE_IMAGE_PATH(TEXT("random.dxf")), &Vector, NULL, NULL );if( nRet != SUCCESS ){MessageBox(hwnd, TEXT("Error loading the file."), TEXT("Error"), MB_OK);return -1;}/* Attach the vector image with this window using the GDI engine and double buffering. */nRet = L_VecAttachToWindow( hwnd, &Vector, VECTOR_ENGINE_DOUBLEBUFFER );if( nRet != SUCCESS ){MessageBox(hwnd, TEXT("Error assigning vector image to window."), TEXT("Error"), MB_OK);L_VecFree( &Vector );return -1;}return 0;case WM_SIZE:/* Set new view port */GetClientRect( hwnd, &rect );L_VecSetViewport( &Vector, &rect );return 0;case WM_PAINT:hdc = BeginPaint(hwnd, &PaintStruct);/* Paint the vector image */L_VecPaint( hdc, &Vector, TRUE );EndPaint(hwnd, &PaintStruct);return 0;case WM_DESTROY:/* Free the vector */L_VecFree( &Vector );PostQuitMessage( 0 );return 0;default:return DefWindowProc( hwnd, message, wParam, lParam );}}