Visual C# NET案例教程 第10章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第10章 画图程序
第10章 画图程序
10.1 画图程序介绍 10.2 界面设计 10.3 图形绘制 10.4 图形的保存与恢复 10.5 打印图形 10.6 知识拓展 10.7 习题
第10章 画图程序
10.1 画图程序介绍
实现一个画图程序,界面如图10-1所示。其主要功能有: (1) 可以用鼠标在画布中画图。 (2) 利用图形种类中的单选按钮选择绘制圆形、矩形或 直线。 (3) 可以设置图形的颜色。 (4) 可以保存图形到文件,以及从文件中读入数据并在 画布中显示。 (5) 可以对图形进行打印设置、打印预览与打印。
第10章 画图程序
表10-1 RadioButton控件的常用属性
属性名 Text
Checked
含义 与控件对象相关联的文本 RadioButton 已被选中
第10章 画图程序
10.2.2 GroupBox控件
GroupBox是一个容器控件,可以容纳其他控件,在软 件界面设计布局中主要有两大功能:一是分组功能,它可以 把完成同一功能的多个控件组合在一起;二是装饰功能,如 果软件界面上的控件很多,通过若干个GroupBox控件的分 组,整个界面就会显得整洁有序、条理清楚。
第10章 画图程序
创建Graphics对象的三种方法: 方法一、利用控件或窗体的Paint事件中的 PainEventArgs对象。 方法二、调用控件或窗体的CreateGraphics方法。 方法三、调用Graphics类的FromImage静态方法,通过 从Image继承的任何对象来创建Graphics对象。在更改已存 在的图像时,通常会使用此方法。
第10章 画图程序
10.2.3 PictureBox控件
PictureBox用于显示图像的Windows图片框控件。在应 用程序设计时一般使用PictureBox来显示位图、元文件、图 标、JPEG、GIF或PNG文件中的图形。PictureBox常用属性 见表10-2。
第10章 画图程序
表10-2 PictureBox常用属性
第10章 画图程序 图10-1 画图程序运行效果
第10章 画图程序
10.2 界 面 设 计
10.2.1 RadioButton控件
RadioButton(单选按钮)控件用于在一组相关的选项中选 择一项,因此单选按钮控件总是成组出现的。通常将若干个 RadioButton控件放置在一个GroupBox控件内组成一组。 GroupBox控件又称分组框,它用于为其他控件提供可识别 的分组。一组中的RadioButton控件在可选性上是互斥的, 即当这组中的某个单选按钮控件被选中时,该组中的其他单 选按钮控件将自动处于不选中状态。RadioButton的Checked 属性值更改时触发CheckedChanged事件。RadioButton控件 的常用属性见表10-1。
10.2.5 界面设计实现
要实现的初始界面如图10-2所示。
第10章 画图程序 图10-2 初始界面
第10章 画图程序
Painter V1.0的实现步骤如下: (1) 新建一个Windows应用程序项目Painter。 (2) 从工具箱的“容器”栏拖入一个Panel控件,在“属 性”模板中设置其Dock属性为Top,使其占据窗体的上方空 间。 (3) 从工具箱的“公共控件”栏向Panel控件上拖放3个 RadioButton,分别设置其Text属性为圆形、矩形与直线;向 Panel控件上拖放一个Button,设置其Text属性为“设置颜 色”;从“容器”栏向Panel控件上拖放一个Panel控件,设 置其BackColor属性为红色;从“容器”栏向Panel控件上拖 放一个GroupBox控件,并调整使其包含3个RadioButton,设 置其Text属性为“图形种类”。
if (colorDialog1.ShowDialog() == DialogResult.OK) {
panel2.BackColor = colorDialog1.Color; }
第10章 画图程序
10.3 图 形 绘 制
10.3.1 Graphics类
Graphics类封装一个GDI+ 绘图图面,பைடு நூலகம்供将对象绘制 到显示设备的方法。Graphics与特定的设备上下关联。画图 方法都被包括在Graphics类中,在绘制任何对象(例如Circle、 Rectangle)时,首先要创建一个Graphics类实例,这个实例相 当于建立了一块画布,有了画布才可以用各种画图方法进行 绘图。因此绘制图形必须先得到一个Graphics类的实例对象, 然后通过引用其提供的方法与属性成员,完成绘制线条和形 状、呈现文本或显示与操作图像等功能。
属性
说明
Image
用于指定图片框显示的图像。该图像可在设计或运行时设置
用于指定图像的显示方式
SizeMode
AutoSize:PictureBox 控件调整自身大小,使图片能正好显示其中 CenterImage:图片居中,若图片大于控件,超出控件的部分被剪切掉 Normal:图片显示在控件左上角,若图片大于控件则超出部分被剪切掉 StretchImage:若图片与控件大小不等,则图片被拉伸或缩小以适应控件 默认值为 Normal
第10章 画图程序
(4) 从工具箱的“公共控件”栏向窗体拖放一个 PictureBox控件,设置其Dock属性为Fill,使其能填充占满 窗体的剩余空间。
(5) 从工具箱的“对话框”栏向窗体拖放一个 ColorDialog控件。该控件运行时不可见,所以出现在设计窗 体的下方。
第10章 画图程序
(6) 双击“设置颜色”按钮,在按钮的单击事件中编写 如下代码:
设置其边框样式:值 None 表示没有边框;FixedSingle 表示单线边框; BorderStyle
Fixed3D 表示立体边框
第10章 画图程序
10.2.4 ColorDialog对话框
ColorDialog对话框为用户提供了颜色选择功能。 ColorDialog对话框的ShowDialog()方法以模态方式显示“颜 色”对话框。ColorDialog的Color属性用于获取或设置用户 选定的颜色值。
第10章 画图程序
10.1 画图程序介绍 10.2 界面设计 10.3 图形绘制 10.4 图形的保存与恢复 10.5 打印图形 10.6 知识拓展 10.7 习题
第10章 画图程序
10.1 画图程序介绍
实现一个画图程序,界面如图10-1所示。其主要功能有: (1) 可以用鼠标在画布中画图。 (2) 利用图形种类中的单选按钮选择绘制圆形、矩形或 直线。 (3) 可以设置图形的颜色。 (4) 可以保存图形到文件,以及从文件中读入数据并在 画布中显示。 (5) 可以对图形进行打印设置、打印预览与打印。
第10章 画图程序
表10-1 RadioButton控件的常用属性
属性名 Text
Checked
含义 与控件对象相关联的文本 RadioButton 已被选中
第10章 画图程序
10.2.2 GroupBox控件
GroupBox是一个容器控件,可以容纳其他控件,在软 件界面设计布局中主要有两大功能:一是分组功能,它可以 把完成同一功能的多个控件组合在一起;二是装饰功能,如 果软件界面上的控件很多,通过若干个GroupBox控件的分 组,整个界面就会显得整洁有序、条理清楚。
第10章 画图程序
创建Graphics对象的三种方法: 方法一、利用控件或窗体的Paint事件中的 PainEventArgs对象。 方法二、调用控件或窗体的CreateGraphics方法。 方法三、调用Graphics类的FromImage静态方法,通过 从Image继承的任何对象来创建Graphics对象。在更改已存 在的图像时,通常会使用此方法。
第10章 画图程序
10.2.3 PictureBox控件
PictureBox用于显示图像的Windows图片框控件。在应 用程序设计时一般使用PictureBox来显示位图、元文件、图 标、JPEG、GIF或PNG文件中的图形。PictureBox常用属性 见表10-2。
第10章 画图程序
表10-2 PictureBox常用属性
第10章 画图程序 图10-1 画图程序运行效果
第10章 画图程序
10.2 界 面 设 计
10.2.1 RadioButton控件
RadioButton(单选按钮)控件用于在一组相关的选项中选 择一项,因此单选按钮控件总是成组出现的。通常将若干个 RadioButton控件放置在一个GroupBox控件内组成一组。 GroupBox控件又称分组框,它用于为其他控件提供可识别 的分组。一组中的RadioButton控件在可选性上是互斥的, 即当这组中的某个单选按钮控件被选中时,该组中的其他单 选按钮控件将自动处于不选中状态。RadioButton的Checked 属性值更改时触发CheckedChanged事件。RadioButton控件 的常用属性见表10-1。
10.2.5 界面设计实现
要实现的初始界面如图10-2所示。
第10章 画图程序 图10-2 初始界面
第10章 画图程序
Painter V1.0的实现步骤如下: (1) 新建一个Windows应用程序项目Painter。 (2) 从工具箱的“容器”栏拖入一个Panel控件,在“属 性”模板中设置其Dock属性为Top,使其占据窗体的上方空 间。 (3) 从工具箱的“公共控件”栏向Panel控件上拖放3个 RadioButton,分别设置其Text属性为圆形、矩形与直线;向 Panel控件上拖放一个Button,设置其Text属性为“设置颜 色”;从“容器”栏向Panel控件上拖放一个Panel控件,设 置其BackColor属性为红色;从“容器”栏向Panel控件上拖 放一个GroupBox控件,并调整使其包含3个RadioButton,设 置其Text属性为“图形种类”。
if (colorDialog1.ShowDialog() == DialogResult.OK) {
panel2.BackColor = colorDialog1.Color; }
第10章 画图程序
10.3 图 形 绘 制
10.3.1 Graphics类
Graphics类封装一个GDI+ 绘图图面,பைடு நூலகம்供将对象绘制 到显示设备的方法。Graphics与特定的设备上下关联。画图 方法都被包括在Graphics类中,在绘制任何对象(例如Circle、 Rectangle)时,首先要创建一个Graphics类实例,这个实例相 当于建立了一块画布,有了画布才可以用各种画图方法进行 绘图。因此绘制图形必须先得到一个Graphics类的实例对象, 然后通过引用其提供的方法与属性成员,完成绘制线条和形 状、呈现文本或显示与操作图像等功能。
属性
说明
Image
用于指定图片框显示的图像。该图像可在设计或运行时设置
用于指定图像的显示方式
SizeMode
AutoSize:PictureBox 控件调整自身大小,使图片能正好显示其中 CenterImage:图片居中,若图片大于控件,超出控件的部分被剪切掉 Normal:图片显示在控件左上角,若图片大于控件则超出部分被剪切掉 StretchImage:若图片与控件大小不等,则图片被拉伸或缩小以适应控件 默认值为 Normal
第10章 画图程序
(4) 从工具箱的“公共控件”栏向窗体拖放一个 PictureBox控件,设置其Dock属性为Fill,使其能填充占满 窗体的剩余空间。
(5) 从工具箱的“对话框”栏向窗体拖放一个 ColorDialog控件。该控件运行时不可见,所以出现在设计窗 体的下方。
第10章 画图程序
(6) 双击“设置颜色”按钮,在按钮的单击事件中编写 如下代码:
设置其边框样式:值 None 表示没有边框;FixedSingle 表示单线边框; BorderStyle
Fixed3D 表示立体边框
第10章 画图程序
10.2.4 ColorDialog对话框
ColorDialog对话框为用户提供了颜色选择功能。 ColorDialog对话框的ShowDialog()方法以模态方式显示“颜 色”对话框。ColorDialog的Color属性用于获取或设置用户 选定的颜色值。