墨迹集合示例

此应用程序基于 InkCollector 对象,并演示墨迹的集合。 应用程序创建一个窗口,向其附加一个 InkCollector 对象,并为用户提供可用于更改墨迹颜色、墨迹宽度以及启用和禁用墨迹收集的菜单选项。

注意

本部分中讨论的版本为 Visual Basic .NET。 示例库中其他语言版本的概念是相同的。

 

声明 InkCollector

应用程序首先导入 Microsoft.Ink 命名空间。 然后,应用程序声明 myInkCollector,它保存窗体的 InkCollector 对象。

' The Ink namespace, which contains the Tablet PC Platform APIImports Microsoft.Ink
...
Public Class InkCollection
   Inherits Form
    ' Declare the Ink Collector object
    Private myInkCollector

设置内容

窗体的 InkCollection_Load 方法处理窗体的 Load 事件。 它创建一个分配给窗体的 InkCollector 对象,该对象修改 InkCollector 对象的 DefaultDrawingAttributes 属性并启用 InkCollector 对象。

Private Sub InkCollection_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    ' Create an ink collector and assign it to this form's window
    myInkCollector = New InkCollector(Me.Handle)

    ' Set the pen width to be a medium width
    myInkCollector.DefaultDrawingAttributes.Width = MediumInkWidth

    ' If you do not modify the default drawing attributes, the default 
    ' drawing attributes will use the following properties and values:
    ' ...

    ' Turn the ink collector on
    myInkCollector.Enabled = True
End Sub

通过将窗体的窗口句 柄分配给 InkCollector 对象的 Handle 属性, 将 InkCollector 分配给窗体的窗口。 通过将 InkCollector 对象的 Enabled 属性设置为 TRUE 来打开墨迹集合。

InkCollector 对象的 DefaultDrawingAttributes 属性设置分配给新游标的默认属性。 若要在新游标上设置不同的属性,请使用 Cursor 对象的 DrawingAttributes 属性。 若要更改单个笔划的绘图属性,请使用 Stroke 对象的 DrawingAttributes 属性。

更改属性

此简单应用程序的其余部分由用户可以进行的各种菜单选择的处理程序组成。 例如,当用户通过从“墨迹”菜单中选择“红色”来选择将墨迹颜色更改为红色时,将在菜单的事件处理程序中使用 InkCollector 对象的 DefaultDrawingAttributes 属性的 Color 属性更改颜色。

Private Sub miRed_Click(ByVal sender As System.Object, 
                        ByVal e As System.EventArgs) Handles miRed.Click
    myInkCollector.DefaultDrawingAttributes.Color = Color.Red
End Sub

关闭窗体

窗体的 Dispose 方法释放 InkCollector 对象 myInkCollector