IStylusSyncPlugin.StylusDown Method
Informs the implementing plug-in that the stylus has touched the tablet digitizer surface.
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
'Declaration Sub StylusDown ( _ sender As RealTimeStylus, _ data As StylusDownData _ ) 'Usage Dim instance As IStylusSyncPlugin Dim sender As RealTimeStylus Dim data As StylusDownData instance.StylusDown(sender, data)
Parameters
- sender
- Type: Microsoft.StylusInput.RealTimeStylus
The RealTimeStylus object that sent the notification.
- data
- Type: Microsoft.StylusInput.PluginData.StylusDownData
Information about the Stylus object associated with the notification.
You can modify the packet data by calling the inherited SetData method of the StylusDownData object contained in the data parameter.
Note: |
|---|
An ArgumentException exception is thrown by the SetData method if the length of the array in the value parameter is not equal to the value of the inherited PacketPropertyCount property. |
This C# example, adapted from the RealTimeStylus Plug-in Sample, shows an implementation of StylusDown. The example draws a purple circle around the point where the stylus touches the digitizer. The myGraphics variable holds an internal reference to a Graphics object for the control the RealTimeStylus is attached to.
public void StylusDown(RealTimeStylus sender, StylusDownData data) { for (int i = 0; i < data.Count; i += data.PacketPropertyCount) { // Packet data always has x followed by y followed by the rest Point point = new Point(data[i], data[i+1]); // Since the packet data is in Ink Space coordinates, we need to convert to Pixels... point.X = (int)Math.Round((float)point.X * (float)myGraphics.DpiX/2540.0F); point.Y = (int)Math.Round((float)point.Y * (float)myGraphics.DpiY/2540.0F); // Draw a circle corresponding to the packet myGraphics.DrawEllipse(Pens.Purple, point.X - 2, point.Y - 2, 4, 4); } }
This Microsoft Visual Basic .NET example, adapted from the RealTimeStylus Plug-in Sample, shows an implementation of StylusDown. The example draws a purple circle around the point where the stylus touches the digitizer. The myGraphics variable holds an internal reference to a Graphics object for the control the RealTimeStylus is attached to.
Public Sub StylusDown(ByVal sender As RealTimeStylus, ByVal data As StylusDownData) _ Implements IStylusSyncPlugin.StylusDown Dim i As Integer For i = 0 To data.Count - data.PacketPropertyCount Step data.PacketPropertyCount ' Packet data always has x followed by y followed by the rest Dim point As New Point(data(i), data((i + 1))) ' Since the packet data is in Ink Space coordinates, we need to convert to Pixels... point.X = Math.Round((System.Convert.ToSingle(point.X) * System.Convert.ToSingle(myGraphics.DpiX) / 2540.0F)) point.Y = Math.Round((System.Convert.ToSingle(point.Y) * System.Convert.ToSingle(myGraphics.DpiY) / 2540.0F)) ' Draw a circle corresponding to the packet myGraphics.DrawEllipse(Pens.Purple, point.X - 2, point.Y - 2, 4, 4) Next i End Sub 'StylusDown
Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note: