在窗体上绘制文本
更新:2007 年 11 月
在本课中,您将学习如何使用图形方法在窗体上绘制文本。
在前面的课程中,您学习了如何使用 Label 控件显示文本。但在某些情况下,您可能想要或需要使用图形方法自己绘制文本。例如,如果希望文本是倾斜的,就不能使用 Label 控件,但可以使用图形方法以任何角度绘制文本。
绘制文本
若要在窗体或控件上绘制文本,请使用 DrawString 图形方法。与其他绘制方法一样,DrawString 采用一个确定颜色的 Brush 对象和指定绘制文本位置的坐标(在本例中为文本边框左上角的 X 和 Y 坐标)。
DrawString 方法还有另外两个参数:即您想要绘制的字符串和确定文本外观的字体。若要指定字体,首先必须创建一个 Font 对象,然后将该对象用作 DrawString 方法的参数。
试一试!
绘制文本
在“文件”菜单上,选择“新建项目”。
在“新建项目”对话框的“模板”窗格中,单击“Windows 应用程序”。
在“名称”框中键入 DrawText,然后单击“确定”。
一个新的 Windows 窗体项目随即打开。
双击窗体以打开代码编辑器,然后从“事件”下拉列表中选择“Paint”。
在 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)
按 F5 运行程序。您应该看到窗体上显示出文本。
使项目保持为打开状态,您在下一步骤中将向其中添加。
绘制旋转文本
若要以某个角度绘制文本,需要使用另一种称为“转换”的图形方法。有几种转换类型可用来获取不同的图形效果,在本例中,您将使用 RotateTransform 方法。
RotateTransform 方法只带有一个参数,即文本的旋转角度。转换在 RotateTransform 方法的下一行代码上执行;此方法也可用于旋转使用其他绘制方法绘制的图形或线条。
试一试!
绘制旋转文本
在 Form1_Paint 事件处理程序中,在前面输入的代码下面添加以下代码。
' Rotate the text 45 degrees. e.Graphics.RotateTransform(45) e.Graphics.DrawString("And exciting too!", aFont, Brushes.Red, _ 100, 0)
按 F5 运行程序。您应该看到窗体上显示出旋转文本。
后续步骤
在本课中,您学习了如何使用 DrawString 方法显示文本。在下一课中,您将学习使用图形方法显示图像。
下一课:在窗体上绘制图像