|
OffsetPenData
- 0 2.0
Offsets the coordinates in an HPENDATA memory block to make them relative to another origin.
BOOL OffsetPenData( HPENDATA hpndt, int dx, int dy )
Parameters
hpndt
Handle to a pen data object.
dx
Offset of x-axis; that is, the amount to move left or right. To move left, the dx value must be negative.
dy
Offset of y-axis; that is, the amount to move up or down. To move up, the dy value must be negative.
Return Value
Returns TRUE if successful, or FALSE if hpndt is in a compressed state.
Comments
For every point in hpndt, dx is added to the x-coordinate and dy is added to the y-coordinate. No overflow checks are made.
An application can use OffsetPenData to make points at display resolution relative to a particular window. If the
window is then moved, the application need only call OffsetPenData again to move the data by the same amount, as shown in the example.
Example
The following sample code illustrates using the OffsetPenData function.
DWORD dwOrg; // Store window origin
.
.
.
// After creating window, note its current position
dwOrg = GetWindowOrg( hWnd );
.
.
.
switch( wMsg )
{
case WM_MOVE:
dx = (int) (LOWORD(lParam) - LOWORD(dwOrg)); // X increment
dy = (int) (HIWORD(lParam) - HIWORD(dwOrg)); // Y increment
dwOrg = (DWORD) lParam; // Keep new org
OffsetPenData( hpendata, dx, dy );
See Also
MetricScalePenData, ResizePenData
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
More Online Helps
Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|