在窗体上绘制文本

更新:2007 年 11 月

在本课中,您将学习如何使用图形方法在窗体上绘制文本。

在前面的课程中,您学习了如何使用 Label 控件显示文本。但在某些情况下,您可能想要或需要使用图形方法自己绘制文本。例如,如果希望文本是倾斜的,就不能使用 Label 控件,但可以使用图形方法以任何角度绘制文本。

绘制文本

若要在窗体或控件上绘制文本,请使用 DrawString 图形方法。与其他绘制方法一样,DrawString 采用一个确定颜色的 Brush 对象和指定绘制文本位置的坐标(在本例中为文本边框左上角的 X 和 Y 坐标)。

DrawString 方法还有另外两个参数:即您想要绘制的字符串和确定文本外观的字体。若要指定字体,首先必须创建一个 Font 对象,然后将该对象用作 DrawString 方法的参数。

试一试!

绘制文本

  1. 在“文件”菜单上,选择“新建项目”。

    1. 在“新建项目”对话框的“模板”窗格中,单击“Windows 应用程序”。

    2. 在“名称”框中键入 DrawText,然后单击“确定”。

    一个新的 Windows 窗体项目随即打开。

  2. 双击窗体以打开代码编辑器,然后从“事件”下拉列表中选择“Paint”。

  3. 在 Form1_Paint 事件处理程序中,添加以下代码。

    ' Create a font object.
    Dim aFont As New System.Drawing.Font("Arial", 22, FontStyle.Bold)
    ' Display the text with the DrawString method.
    e.Graphics.DrawString("Graphics are fun!", aFont, Brushes.Black, _
        20, 10)
    
  4. 按 F5 运行程序。您应该看到窗体上显示出文本。

    使项目保持为打开状态,您在下一步骤中将向其中添加。

绘制旋转文本

若要以某个角度绘制文本,需要使用另一种称为“转换”的图形方法。有几种转换类型可用来获取不同的图形效果,在本例中,您将使用 RotateTransform 方法。

RotateTransform 方法只带有一个参数,即文本的旋转角度。转换在 RotateTransform 方法的下一行代码上执行;此方法也可用于旋转使用其他绘制方法绘制的图形或线条。

试一试!

绘制旋转文本

  1. 在 Form1_Paint 事件处理程序中,在前面输入的代码下面添加以下代码。

    ' Rotate the text 45 degrees.
    e.Graphics.RotateTransform(45)
    e.Graphics.DrawString("And exciting too!", aFont, Brushes.Red, _
        100, 0)
    
  2. 按 F5 运行程序。您应该看到窗体上显示出旋转文本。

后续步骤

在本课中,您学习了如何使用 DrawString 方法显示文本。在下一课中,您将学习使用图形方法显示图像。

下一课:在窗体上绘制图像

请参见

任务

在窗体上绘制形状

其他资源

绘制图片:使用图形

Visual Basic 指导教程