第6章Windows窗体应用程序设计(1)

Download Report

Transcript 第6章Windows窗体应用程序设计(1)

第6章 Windows窗体应用程序
设计(1)
主讲教师: 杨建军
2015年4月13日
Talents come from diligence,
and knowledge is gained by accumulation.
天才源于勤奋,知识源于积累 。
教学目标
本章介绍一些最常用的基本控件,Visual
Studio 2005附带有许多控件,这些控件拥
有各种功能,通过Visual Studio的设计功能,
开发用户界面、处理用户的交互将非常简
单、有趣。通过本章的学习,读者应掌握
Windows应用程序开发的基本流程和技巧,
掌握常用控件的使用,并且能够学会参考
帮助系统使用本书没有介绍的Windows窗
体控件。
教学重点
 Windows窗体
Windows基本控件
System.Windows.Forms.MessageBo
x使用
创建Windows应用程序
6.1窗体对象
Windows窗体定义在
System.Windows.Forms命名空间中。在创
建Windows应用程序时,窗体是应用程序
的总容器,其他所有的控件都要建立在窗
体中,控件用于提供Windows应用程序的
基本输入/输出功能。
6.1.1创建空白窗体
创建空白窗体的操作如下:
(1)在Visual Studio 2005开发环境中,选
择【文件】|【新建】|【项目】命令,弹出
[新建项目]对话框。
(2)在【项目类型】列表框中,选中
【Visual C#项目】,并在右边的【模版】
列表框中,选中【Windows 应用程序】选
项,然后在该对话框下方的【名称】文本
框中,输入该项目的名称,如“Ex6-1”,在
【位置】文本框中,输入保存该项目的位
6.1.1创建空白窗体
置,也可单击【浏览】按钮来选定保存位
置,如图6-1所示。
单击【确定】按钮,在Visual Studio .NET
的编辑窗口中将显示一个空白窗体。如图62所示
(3)设置窗体属性
在窗体上任意位置单击,选中要设置属性
的窗体。
6.1.2控件的公有属性、事件和方法
.NET中的大多数控件都派生于
System.Windows.Forms.Control类。因
此,我们在介绍其它各个控件之前,先来
介绍一下Control这个类,Control类实现
了所有窗体交互控件的基本功能:处理用
户键盘输入、处理消息驱动、限制控件大
小等等。
Control类的属性、方法与事件是所有窗体
控件所公有的
6.1.2控件的公有属性、事件和方法
1.Control类的属性
Control类最常见的一些属性如表6-1所示 。
每一个控件都有Name属性, 它是控件的名
称。这个名称可以在代码中用于引用该控
件;每一个控件都有Text属性,是给用户查
看或者输入的 ; Anchor属性用于指定在用
户重新设置窗口的大小时控件该如何响应。
6.1.2控件的公有属性、事件和方法
2.Control类的事件
事件就是发生在控件上的动作。例如,在
用户单击或按下按钮时,该按钮就会生成
一个事件,说明发生了什么。处理事件就
是程序员为该按钮提供功能的方式。
Control类定义了所有控件的一些比较常见
的事件,如表6-2所示。
6.1.2控件的公有属性、事件和方法
3.Control类的方法
Control类定义了所有控件的一些比较常见
的方法,如表6-3所示。
表6-3 Control类最常见的方法
6.1.2控件的公有属性、事件和方法
6.1.2控件的公有属性、事件和方法
4.2 System.Console类
输入和输出是很多程序中常用的功能,也
是非常重要的功能,C#提供了功能强大的
输入与输出的控制。它主要通过“流”来
控制输入和输出。流是字节序列的抽象概
念,例如文件、输入输出设备、内部进程
通讯管道或者TCP/IP套接字。
Console类对从控制台读取字符并向控制台
写入字符的应用程序提供基本支持。如果
控制台不存在(在基于Windows的应用程
序中就是这样),则不显示向控制台的写
6.2控件对象介绍
Visual Studio 2005提供了Windows应用程序
设计中经常使用的各种控件,下面我们分
别介绍。
6.2.1 Label和LinkLabel控件
Label控件
Label是标准的Windows标签,主要用于在窗体上显示
文本。通常情况下不需要为它添加任何事件处理代码。
LinkLable控件
LinkLabel类似于Label控件,但它以Internet链接的方式
显示(超链接)。
Label与LinkLabel的属性
这两个控件的公有属性为BorderStyle、FlatStyle、
Image、ImageAlign,此外,LinkLabel控件还具有
LinkArea、LinkColor、Links、LinkVisited、TextAlign
和VisitedLinkColor。
6.2.2 Button控件
Button控件的属性 :
 Name属性:设置按钮的名称 ,以便在程序中引用它。
 Text属性:设置在按钮上显示的标题文本。
 Visible属性:设置是否显示按钮,true显示,false隐藏。
 Enabled属性:设置按钮是否可用,当设置为false时,按
钮不响应任何事件。
 FlatStyle属性:设置按钮的显示样式。
 Image属性:用于指定一个在按钮上显示的图像。
 ImageAlign属性:设置图像在按钮上的对齐方式。
Button控件的事件 :
按钮最常用的事件是Click。只要用户单击了按钮就会触该
事件。
6.2.3 TextBox控件
TextBox控件
文本框的主要用途是让用户输入文本。用户可
以在文本框中输入任何字符,也可以只允许用
户输入指定类型的字符,例如,只允许用户在
文本框中输入数值。
TextBox控件的常见的属性如表6-6所示。
TextBox控件提供了表6-7所示的事件 。
6.2.4 RadioButton和CheckBox
控件
RadioButton控件
RadioButton控件一般成组出现,用于从多种功能中选择
一种功能的情况,其最常用的事件是CheckChanged和
Click事件。
CheckBox控件
CheckBox控件列出了可供选择的选项,用户可以从中
选择一项或多项。当选中某项后,其左边的小方框会打
上勾标志;当Checked属性改变时触发CheckChanged
事件。
GroupBox控件
GroupBox控件主要用于为单选按钮和复选框控件进行
分组,以便于用户识别。在窗体上创建该控件时,可先
建立GroupBox控件然后在其内部建立其他控件;也可
利用剪切、粘贴的方法把已有的控件放到GroupBox控
件中。
6.2.5 RichTextBox控件
RichTextBox控件
RichTextBox多用于显示和输入格式化的文本(例
如,黑体、下划线和斜体)。RichTextBox使用
标准的格式化文本,称为Rich Text Format (富
文本格式)或 RTF。
RichTextBox的一些常用属性如表6-12 。
RichTextBox使用的大多数事件与TextBox使用的
事件相同,表6-13中有几个有趣的新事件 。
6.2.6 ListBox和CheckedListBox
控件
列表框用于显示一组字符串,可以一次从中
选择一个或多个选项。
ListBox类派生于ListControl类。后者提供
了.NET Framework内置列表类型控件的基
本功能。
另一种类型的列表框称为CheckedListBox,
派生于ListBox类。它提供的列表类似于
ListBox,但除了文本字符串以外,每个列
表选项还附带一个复选框标记。
6.2.7 TabControl控件
TabControl控件
对于TabControl控件的使用,主要通过设置属性
来实现,一般不必为它编写事件代码。
TabControl的属性
Alignment、Appearance、HotTrack、Multiline、
RowCount、SelectedIndex、SelectedTab、
TabCount、TabPages
6.2.8 组合框(ComboBox)
组合框是一个文本框和一个列表框的组合。
与列表框不同的是列表框只能在给定的列表
项中选择,而组合框除了可在给定的列表项
中选择还可以直接在文本框中输入
(DropDownStyle属性被设置
DropDownList时除外)。
6.2.8 组合框(ComboBox)
6.2.8 组合框(ComboBox)
6.3 System.Windows.Forms.
MessageBox类
消息框一般用于程序运行过程中显示提示
或信息。可以有不同格式的消息框。
Windows应用程序中,为提高于用户的交
互能力,消息框大量使用。C#中通过
MessageBox类实现消息框的定义。
MessageBox类提供了静态方法Show显示
消息框,有多种形式实现消息框的显示。
6.3 System.Windows.Forms.
MessageBox类
方法1:
public static DialogResult Show(string text);
方法2:
public static DialogResult Show(string text,
string caption);
方法3:
public static DialogResult Show(string text,
string caption, MessageBoxButtons
buttons);
6.4创建Windows应用程序
对话框可以分为模式对话框和非模式对话
框两种。模式对话框是指用户只能在当前
的窗体进行操作,在该窗体关闭之前不能
切换到其它窗体。非模式对话框是指当前
所操作的窗体可以切换。两者区别是在对
话框被关闭之前用户能否在同一应用程序
的其他地方进行工作。
C#的Form类中,使用Show方法实现非模
式窗体显示。通常情况下,窗体的显示为
非模式显示。
6.4创建Windows应用程序
如显示非模式窗体From2的代码如下:
Form2 frm=new Form2();
frm.Show();
模式窗体的显示通过ShowDialog方法实现,
如在程序运行过程中,以下代码实现窗体
的模式显示:
Form2 frm=new Form2();
frm.ShowDialog();
注意:应用程序窗口的显示用:
本章小结
本章重点介绍了:
Windows窗体;
Windows基本控件 ;
System.Windows.Forms.MessageBox使
用;
创建Windows应用程序方法等内容。