Starting the Chain of Events
When an application receives a WM_LBUTTONDOWN message, that message signals
the beginning of an input session. (For a definition of input session, see
"Beginning an Input Session" in Chapter 2.) The following code fragment shows how to
handle the message when not calling
DoDefaultPenInput:
INKINGINFO inkinfo;
PCMINFO pcminfo;
HPCM hpcm;
LONG lExInfo;
int iRet = TRUE;
.
.
.
switch (wMsg)
{
case WM_LBUTTONDOWN: // Pen down (maybe)
lExInfo = GetMessageExtraInfo();
if (IsPenEvent( wMsg, LOWORD(lExInfo) ) // If true pen down,
{ // take the actions
. // described in the
. // text below
.
}
else // No, it's a mouse
{ // button down
The application initializes a
PCMINFO structure and
INKINGINFO structure in preparation for data collection and display.
DoDefaultPenInput handles this task automatically, then provides the application an opportunity
to selectively change the default values. (For a description of the
submessages PE_GETPCMINFO and PE_GETINKINGINFO, see "DoDefaultPenInput Messages" in
Chapter 2.) If it does not call
DoDefaultPenInput, an application must initialize the structures itself, as shown here:
#define TIME_OUT 1000 // Time-out in msec
PCMINFO pcm;
INKINGINFO ink;
.
.
.
pcm.cbSize = sizeof( PCMINFO ); // Required
pcm.dwPcm = PCM_TIMEOUT | PCM_RECTBOUND; // When to end session
pcm.dwTimeOut = TIME_OUT; // Time-out value in ms
GetWindowRect( hwnd, (LPRECT) &pcm.rectBound ); // Use window borders
ink.cbSize = sizeof( INKINGINFO ); // initialize
. // the INKINGINFO
. // structure "ink"
.
The above lines specify that the input session ends when the pen travels (or
taps) outside the hwnd window or pauses for the number of milliseconds set by the constant TIME_OUT. For a detailed description of these structures, see the entries for
PCMINFO and
INKINGINFO in Chapter 11, "Pen Application Programming Interface Structures."
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database