Pen-Aware Applications

The Pen API allows the developer to approach pen-based computing in stages. For those who wish to do only a minimum amount of programming work and yet incorporate significant pen capabilities in an application, the Pen API provides the DoDefaultPenInput function. DoDefaultPenInput embodies a set of more complex API elements in one function. As its name implies, it allows applications to rely on the system to make all of the decisions concerning pen input. The developer can incrementally enhance a pen-based application as time and interest permit.

When called in response to a WM_LBUTTONDOWN message generated by the pen device, DoDefaultPenInput starts a cascade of messages. These messages reflect the many steps of the recognition process, each message serving as a notice that a next step in the process is about to occur. The application can take some action prior to each step or simply ignore the message and let the DefWindowProc function provide default services.

This approach follows standard Windows messaging procedures. If an application lets the message pass through to DefWindowProc, Windows translates the pen events into the appropriate keyboard messages. For example, handwritten characters generate appropriate WM_CHAR messages. In this way, a developer can gradually modify an existing application to become more and more sophisticated about pen input by adding code to handle more of the DoDefaultPenInput messages.

The following sections describe the programming convenience of using system defaults, which you might think of as "letting the system do the work." The text also mentions various options available to the developer who wishes to exercise more control over the recognition process. These options involve manipulating data objects such as HRC and HPENDATA, which are fully described in Chapters 4 and 5. The following sections serve as an introduction to the entire process of converting pen-based input to usable data. When you later decide to incorporate additional recognition management into your application, see Chapters 4 and 5.

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database