学习情境4C#程序设计.docx
- 文档编号:10122396
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:66
- 大小:900.54KB
学习情境4C#程序设计.docx
《学习情境4C#程序设计.docx》由会员分享,可在线阅读,更多相关《学习情境4C#程序设计.docx(66页珍藏版)》请在冰豆网上搜索。
学习情境4C#程序设计
学习情境四:
Windows应用程序开发
——“注册窗口和多文档窗口的实现”
学习领域
C#程序设计
总课时
48
学习情境
Windows应用程序开发——
“注册窗口和多文档窗口的实现”
参考课时
15
教学安排:
第2学期
学习任务:
♦创建Windows应用程序
♦Windows窗体中的基本控件Lable、Button、ListBox、ComboBox、TabControl、PictureBox的用法
♦MessageBox对象
♦Windows窗体中的高级控件ListView、TreeView的用法
♦创建SDI和MDI应用程序
♦菜单和工具栏应用
♦常见对话框的应用
学习目标:
♦创建Windows应用程序的步骤
♦Windows窗体中的基本控件的应用
♦Windows窗体中的高级控件ListView、TreeView的用法
♦创建SDI和MDI应用程序
♦菜单和工具栏应用
♦常见对话框的应用
难点:
♦Windows窗体中的高级控件ListView、TreeView的用法
♦多文档和单文档应用程序
♦快捷菜单的应用
♦状态栏的应用
主要内容及标准:
单项能力
评价内容
评价标准
♦Windows窗体中的常用控件的用法
♦消息框的应用
♦列表视图控件的应用
♦树视图控件的应用
♦多文档和单文档应用程序的应用
♦菜单和工具栏应用
♦状态栏的应用
1.Windows窗体中的常用控件的用法和属性设置
2.使用MessageBox进行消息处理
3.窗体中控件布局的技巧
4.树视图控件的应用
5.菜单提供将命令分组的方法,可以帮助用户快速访问。
6.工具栏包含工具按钮。
可以对程序中常用的菜单命令提供快速访问
7.状态栏的使用
8.文件对话框的使用
9.字体对话框和颜色对话框的应用
1熟练.Windows窗体中的常用控件的用法和属性设置
2.MessageBox消息处理的各种用法
3.熟练在窗体中对控件布局的技巧
4.树视图控件在应用程序中的应用
5.菜单提供将命令分组的方法,可以帮助用户快速访问。
6.可以对程序中常用的菜单命令提供快速访问
7.熟练运用状态栏显示在窗体的底部,并显示应用程序状态信息
8.文件对话框使用
9.熟练设置应用字体和颜色
教学方法建议:
讲述法项目式教学法任务教学法实践操作法
考核与评价:
1.基本知识技能应用评价
2.任务完成情况评价
3.工作态度评价
教学环境:
微机、白板、投影仪、多媒体教学系统、多媒体课件、网络教学资源
Win2000、IIS、Dreamweaver、VisualStudio2005、Access、SQLServer
教师需要的能力与知识:
♦对Windows窗体整体把握,对Windows窗体中控件布局设置
♦Windows窗体中的常用控件的用法和属性设置
♦使用MessageBox进行消息处理
♦窗体中控件布局的技巧
♦树视图控件的应用
♦菜单提供将命令分组的方法,可以帮助用户快速访问。
♦工具栏包含工具按钮。
可以对程序中常用的菜单命令提供快速访问
♦状态栏显示在窗体的底部,一般显示有关应用程序状态的信息
♦文件对话框可以帮助用户快速打开和保存文件
♦字体对话框和颜色对话框用于设置应用程序中需要的字体和颜色
学生需要的能力与知识:
♦Windows窗体中的常用控件的用法和属性设置
♦使用MessageBox进行消息处理
♦窗体中控件布局的技巧
♦树视图控件的应用
♦菜单提供将命令分组的方法,可以帮助用户快速访问。
♦工具栏包含工具按钮。
可以对程序中常用的菜单命令提供快速访问
♦状态栏显示在窗体的底部,一般显示有关应用程序状态的信息
♦文件对话框可以帮助用户快速打开和保存文件
♦字体对话框和颜色对话框用于设置应用程序中需要的字体和颜色
学习情境四Windows应用程序开发:
——“注册窗口和多文档窗口的实现”
任务书
1.任务设计
通过学习Windows窗体应用程序的相关内容。
事实上,我们每天都会接触到不同的Windows窗体,操作系统中”我的电脑”、”记事本”等,这些窗口有相似的特点,可以改变大小,可以在窗体上添加按钮和菜单等。
Windows应用程序一般都由一个或多个窗体组成,这些窗体可包含文本框、按钮、列表框等控件,可以实现用户与应用程序交互。
单文档和多文档应用程序的运用,Windows应用程序中菜单和工具栏的应用。
本情境主要学习创建Windows应用程序的方法和实现Windows应用程序功能的基本控件。
2.任务准备
开发环境的配置:
提供开发所需环境,包括VisualStudio2005或isualStudio2005,.NETFramework。
3.任务指导
首先,将本情景的概念理解并熟练运用,理解Windows应用程序的文本框、按钮、列表框等控件,单文档和多文档应用程序的运用,Windows应用程序中菜单和工具栏的应用。
最后完成实现“注册窗口和多文档窗口”的应用程序。
4.任务分配
分角色进行,按组完成该项目。
要求在项目中分为不同角色完成下列任务:
(1)完成总体设计任务
要求完成项目规划设计
(2)完成概要设计任务
要求完成项目目标、开发及运行环境的配置
(3)完成详细设计任务
要求完成集成环境的面板配置,新项目的创建,并测试功能。
(4)实现“注册窗口和多文档窗口”的程序设计。
学习情境四:
Windows应用程序开发
——“注册窗口和多文档窗口的实现”
前面学习的内容都是用命令行演示的,从现在学习Windows窗体应用程序的相关内容。
Windows窗体应用程序也就是WinForms应用程序。
事实上,我们每天都会接触到不同的Windows窗体,操作系统中我的电脑、记事本、听歌的软件窗口等,这些窗口有相似的特点,可以改变大小,可以在窗体上添加按钮和菜单等。
Windows应用程序一般都由一个或多个窗体组成,这些窗体可包含文本框、按钮、列表框等控件,可以实现用户与应用程序交互。
本情境主要学习创建Windows应用程序的方法和实现Windows应用程序功能的基本控件。
主要内容如下:
●创建Windows应用程序。
●Windows窗体中的基本控件Lable、Button、ListBox、ComboBox、TabControl、PictureBox的用法。
●MessageBox对象。
●Windows窗体中的高级控件ListView、TreeView的用法。
●如何创建SDI和MDI应用程序。
●菜单和工具栏在Windows应用程序中的应用。
●如何使用各种常见对话框。
●对话框的模式。
1用C#创建Windows应用程序
.NETFramework提供了Windows窗体和窗体中所需要的控件,使创建Windows应用程序变得非常简单,可以在编写极少量代码的情况下创建功能强大的应用程序。
1.1创建第一个Windows应用程序
创建Windows应用程序的步骤如下:
(1)选择“开始”“程序”“MicrosoftVisualStudio2005”命令,打开VS2005编译器。
(2)选择“文件”“新建”“项目”选项。
(3)项目类型选择“VisualC#”,模板选择“Windows窗口应用程序”。
(4)选择文件存放位置,为项目命名,单击“确定”按钮,即可进入VS2005界面。
用VisualC#创建Windows应用程序项目时,会自动创建一个类名为Form的窗体。
此时单击“调试”,即可运行程序。
效果如上图
Windows应用程序的VS界面并不复杂,除了菜单栏、工具栏等通用的条目外,左边是“工具箱”面板,为Windows窗体应用程序开发提供强有力的工具。
中间是“窗体设计器”,右边是“解决方案资源管理器”面板,下面是属性面板等。
1.2Windows应用程序的文件夹结构
创建了Windows应用程序后,下面来看看Windows应用程序的文件夹结构。
Windows应用程序的文件都由解决方案资源管理器统一管理,如下图所示。
解决方案资源管理器中包含解决方案名称、项目名称和组成项目的文件。
其中From1.cs是窗体文件,对窗体编写的代码都放到这个文件中,单击From1.cs文件前的加号,可以看到From1.Designer.cs文件,此文件即为窗体设计文件,其中的代码是对窗体进行编辑时自动生成的,一般不需要修改。
Program.cs文件是主程序文件,包含程序的入口函数Main(),该程序文件和Main()方法中的代码都是程序自动生成的,一般不需要修改。
生成的代码如下:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Windows.Forms;
namespaceExample_FormTest
{
staticclassProgram
{
///
///应用程序的主入口点。
///
[STAThread]
staticvoidMain()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(newfrmStudent());
}
}
}
这段代码要关注的是Application.Run(newForm1())方法,Run方法运行窗体,方法中的参数指定运行的窗体类名。
默认参数为NewForm1(),即默认将Form1窗体作为首选运行的窗体,如果要改变程序的起始运行窗体,修改其中的参数即可。
2Windows窗体简介
在WindowsForms中,窗体是用于向用户显示信息的可视图面。
如果把构建可视程序界面看作画图,那么窗体就类似于做图用的画布,在画布上可以添加你想绘制的任何图像。
通过在窗体上放置控件,并开发对用户操作(如鼠标单击或按键)的响应来构建WindowsForms应用程序。
2.1窗体的属性
在VS2005中,WinForms应用程序的窗体文件有两种编辑窗口,分别是窗体设计器和代码编辑窗口(如下图所示)。
窗体设计器窗口是进行可视化操作的窗口,使用鼠标进行窗体界面设计、控件拖放、设计窗体属性都可在此完成,不需要编写代码。
WinForms中的窗体就是一个类,类中包括属性和方法。
窗体重要属性如表所示:
属性
说明
Name
窗体的名字
Text
窗体标题栏中显示的文本
BackColor
背景颜色
FormBorderStyle
窗体显示边框样式,默认false
ShowInTastBar
确定窗体是否出现在Windows任务栏中,默认true
MaximizeBox
确定窗体标题栏中是否现实最大化按钮,默认true
TopMost
指示确窗体是否始终显示在该属性为false的窗体上,默认false
窗体中的属性和普通类的属性是相同的,只是操作更方便,用可视化方式和代码编写方式都可实现。
1、窗体的名称属性(Name)
设置窗体名称的属性是Name,该属性值主要用于在程序代码中引用窗体。
在初始新建一个Windows应用程序项目时,自动创建一个窗体,该窗体的名称被默认为Form1;添加第2个窗体,其名称被默认为Form2,依次类推。
2、窗体的标题属性(Text)
Text属性用于设置窗体标题栏显示的内容,它的值是一个字符串。
3、窗体的控制菜单属性
(1)ControlBox属性:
用来设置窗体上是否有控制菜单
(2)MaximizeBox属性:
用于设置窗体上的最大化按钮
(3)MinimizeBox属性:
用于设置窗体上的最小化按钮
4、影响窗体外观的属性
(1)FormBorderStyle属性:
用于控制窗体边界的类型,有7个可选值。
None、Fixed3D、FixedDialog、FixedSingle、Sizable、FixedToolWindow、SizableToolWindow。
(2)Size属性:
用来设置窗体的大小。
(3)Location属性:
设置窗体在屏幕上的位置,即设置窗体左上角的坐标值。
(4)BackColor属性:
用于设置窗体的背景颜色,可以从弹出的调色板中选择。
(5)BackgroundImage属性:
用于设置窗体的背景图像。
(6)Opacity属性:
该属性用来设置窗体的透明度,其值为100%时,窗体完全不透明;其值为0%时,窗体完全透明。
2.2窗体的重要事件
上一情境学习了事件的概念和使用,了解了事件的运行机制,Windows编程技术都是建立在事件基础上的。
在窗体和控件中,我们看到很多事件,Windows应用程序就是通过对事件进行编码来实现具体功能。
窗体的重要事件如下表所示。
事件
说明
Load
窗体加载时发生
MouseClick
鼠标单击事件,用户单击窗体时触发
MouseDoubleClick
鼠标单击事件,用户双击窗体时触发
MouseMove
鼠标移动事件,用户鼠标移动时触发
KeyDown
用户按下某键时触发
KeyUp
键盘释放事件,释放键时触发
VS2005编写事件处理程序时,遵循以下步骤:
1、单击要创建事件处理程序的窗体和控件。
2、在属性窗口中单击“事件”按钮。
3、双击创建事件处理程序的事件。
4、打开事件处理的方法,编写处理代码。
现在来编写单击窗体MouseClick事件的处理程序,当鼠标单击窗体时,在窗体的标题栏显示“我的第一个Windows程序”。
程序编写步骤:
1、在窗体设计器窗口选中窗体。
2、在属性窗口单击“事件”按钮,打开事件选项卡。
3、选中MouseClick事件。
4、双击MouseClick事件右边的单元格,即可生成MouseClick事件处理程序方法。
5、在生成的事件处理程序方法中编写事件处理代码:
privatevoidfrmstudent_mouseClick(objectsender,MouseEventArgse)
{
this.text=”我的第一个Windows程序”;
}
下面分析事件中的代码:
●this和前面学过的用法相同,代表当前对象,在窗体中使用时,即代表当前窗体对象。
●Text是窗体的Text属性,将其值设置为“=”右面的字符串。
●Sender是事件源,表示谁引发该事件,在此事件中,事件源就是窗体。
●e代表鼠标事件参数
3Windows窗体中的常用控件
.NETFramework提供了非常多的控件,以便能够快速开发专业的Windows应用程序。
现通过“学生管理系统”项目来学习常用的控件。
首先新建一个项目叫做StudentManage,项目中添加两个窗体,一个是登录界面,一个是注册界面,通过这两个窗体来学习窗体中的一些基本控件。
登录界面如下图左所示,注册界面如下图右所示。
学生登录窗口包括两个标签(Label)、两个文本框(TextBox)、两个按钮(Button)控件。
窗体的Text属性值设为“登录”,Name属性设为“frmLogin”,其它默认即可。
学生注册窗口的设置在后面学习。
下面学习控件的用法。
3.1标签(Lable)控件和超链接标签(LinkLable)控件
标签(Lable)控件是最常用的控件,在任何Windows应用程序中都可以看到标签控件。
标签控件用于显示用户不能编辑的文本或图像,常用于对窗体上各种控件进行标注或说明。
上图“学生登录”窗口中的“用户名”和“密码”都是标签。
工具箱中的标签控件如下图所示。
在窗体中添加标签控件时,会创建一个Label类的实例。
Label控件的部分属性和方法如下表:
属性
说明
Text
该属性用于设置或获取与该控件关联的文本
Image
指定标签要显示的图象
方法
说明
Hide
隐藏控件,调用该方法时,即使Visible属性设置为True,控件也不可见
Show
相当于将控件的Visible属性设置为True并显示控件
事件
说明
Click
用户单击控件时将发生该事件
设置“学生登录窗口”的属性后所产生的代码如下所示:
#regionWindows窗体设计器生成的代码
///
///设计器支持所需的方法-不要使用代码编辑器修改此方法的内容。
///
privatevoidInitializeComponent()
{
this.lblName=newSystem.Windows.Forms.Label();
this.lbPwd=newSystem.Windows.Forms.Label();
//
//lblName
//
this.lblName.AutoSize=true;
this.lblName.Location=newSystem.Drawing.Point(56,73);
this.lblName.Name="lblName";
this.lblName.Size=newSystem.Drawing.Size(41,12);
this.lblName.TabIndex=0;
this.lblName.Text="用户名";
//
//lbPwd
//
this.lbPwd.AutoSize=true;
this.lbPwd.Location=newSystem.Drawing.Point(58,113);
this.lbPwd.Name="lbPwd";
this.lbPwd.Size=newSystem.Drawing.Size(29,12);
this.lbPwd.TabIndex=1;
this.lbPwd.Text="密码";
//
//frmLogin
//
this.AutoScaleDimensions=newSystem.Drawing.SizeF(6F,12F);
this.AutoScaleMode=System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize=newSystem.Drawing.Size(292,273);
this.Controls.Add(this.lbPwd);
this.Controls.Add(this.lblName);
this.Name="frmLogin";
this.Text="登录";
this.Load+=newSystem.EventHandler(this.frmLogin_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
privateSystem.Windows.Forms.LabellblName;
privateSystem.Windows.Forms.LabellbPwd;
这些代码反映了窗体设计器中窗体和控件的属性。
与Lable控件不同的是,超链接标签(LinkLable)除了具有Lable控件所有的属性、方法和事件外,该控件还可以在Windows应用程序中添加Web样式的超链接。
下表列出了LinkLable部分属性和事件。
属性
说明
LinkBehavior
指定链接显示的行为,AlwaysUnderLine:
始终显示带下划线的文本,HoverUnderLine:
鼠标悬停在链接文本上时显示下划线,NeverUnderLine:
从不带下划线,SystemDefault:
系统默认值。
LinkArea
指定文本显示链接的部分
LinkColor
链接的颜色
LinkVisited
设置为True时,单击则会显示另外一种颜色
VisitedLinkColor
设置访问过的链接显示的颜色
3.2文本框控件(TextBox)
文本框(TextBox)的作用是实现程序与用户的交互,获取用户输入的信息或者向用户显示文本。
文本框控件的主要属性和事件如下表所示。
TextBox提供了三种样式的输入:
单行、多行和密码。
输入内容比较多时,设置Multiline属性为True,可以调整TextBox宽度,实现多行输入。
如果文本框的内容比较保密,设置PasswordChar属性为“*”,输入的内容就可以“*”显示。
3.3按钮控件(Button)
按钮(Button)控件几乎存在于所有的Windows对话框中,是Windows应用程序中最常用的控件之一。
按钮控件允许用户通过单击来执行操作。
按钮最重要的事件,也是最常用的事件就是Click。
当用户单击按钮时,都会调研Click事件。
按钮的主要属性和事件如下表:
了解了按钮的属性和事件后,下面继续设计登录窗体。
从工具箱拖放两个按钮到窗体,设置按钮属性。
至此,登录窗口已经设计完毕,添加代码完成用户登录功能。
示例代码如下:
privatevoidbtnlogin_Click(objectsender,EventArgse)
{
if((this.txtName.Text=="小飞侠")&&(this.txtPwd.Text=="1234"))
{
MessageBox.Show("登录成功!
");
}
else
{
MessageBox.Show("用户名或密码错误");
}
//清空文本框
this.txtName.Text="";
this.txtPwd.Text="";
}
登录按钮事件中的代码实现的功能是,如果用户在txtName文本框中输入正确的用户名”小飞侠”,同时在txtPWD文本框中输入密码“1234”,单击“登录”按钮,窗体中显示登录成功。
否则窗体中显示“用户名和密码错误”。
不管是否登录成功,都要将文本框中输入的内容全部清空。
登录和登录后窗口如下图所示。
3.4分组框控件(GroupBox)
分组框(GroupBox)是对控件进行分组的控件,可以设置每个组的标题。
分组框控件属于容器控件,一般不对该控件编码。
Windows窗体使用GroupBox控件对控件分组的原因有三个:
●对相关窗体元素进行可视化分组以构造一个清晰的用户界面。
●创建编程分组(例如,单选按钮分组)。
●设计时将多个控件作为一个单元移动。
分组框常用的属性只有Text,使用该属性修改分组框中的标题。
使用分组框创建一组控件的步骤如下:
1、在窗体上绘制GroupBox控件。
2、向分组框添加其他控件,在分组框内
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学习 情境 C# 程序设计
![提示](https://static.bdocx.com/images/bang_tan.gif)