C#程序设计第5章Windows应用程序
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
▪ 窗体是可视化程序设计的基础界面,是其他对象的载 体和容器。控件是添加到窗体对象上的对象,每个控 件都有自己的属性、方法和事件以完成特定的功能。
▪ C#中以类Form来封装窗体,一般来说,用户设计的窗 体都是类Form的派生类,用户窗体中添加其他界面元 素的操作实际上就是向派生类中添加私有成员。
▪ 当新建一个Windows应用程序项目时,C#就会自动创 建一个默认名为Form1的Windows窗体。
▪ 属性是通过属性类的声明定义的,属性类可以具有定 位和命名参数。属性是使用属性规范附加到 C# 程序中 的实体上的,而且可以在运行时作为属性实例检索。
5.2 窗体、属性、事件
❖属性和字段的区别: 属性是逻辑字段;属 性是字段的扩展,源于字段;属性并不占 用实际的内存,字段占内存位置及空间 。 属性可以被其它类访问,而大部分字段 不能直接访问。属性可以对接收的数据范 围作限定,而字段不能。(也就是增加了 数据的安全性)最直接的说:属性是被“ 外部使用”,字段是被“内部使用”。
第5章 Windows应用程序
5.1 Windows程序的基本结构
❖在典型的 Windows 应用程序中,由于有了 图形用户界面,操作系统启动之后的几乎 所有操作都是为响应用户操作(如移动鼠 标、选择菜单选项或键入某些文本)而发 生的。这些操作触发“事件”,然后调用 应用程序中称为“事件处理程序”的特殊 方法。Windows 程序所执行的几乎任何操 作都是由事件处理程序启动的。未生成任 何事件时,程序将只保持现有状态,不执 行任何操作。
❖典型的Windows窗体程序通常包括窗体 (Forms)、控件(Controls)和相应的事件 (Events)。
5.2 窗体、属性、事件
❖ 1.窗体
▪ Windows窗体和控件是开发C#应用程序的基础,窗体 和控件在C#程序设计中扮演着重要的角色。在C#中, 每个Windows窗体和控件都是对象,都是类的实例。
5.2 窗体、属性、事件
❖3.事件
▪ Windows是事件驱动的操作系统,对Form类的 任何交互都是基于事件来实现的。C#事件就是 基于Windows消息处理机制的,只是封装的更 好,让开发者无须知道底层的消息处理机制, 就可以开发出强大的基于事件的应用程序来。
▪ 在以往我们编写这类程序中,往往采用等待机 制,为了等待某件事情的发生,需要不断地检 测某些判断变量,而引入事件编程后,大大简 化了这种过程:
5.2 窗体、属性、事件
▪ 使用事件,可以很方便地确定程序执行顺序。 ▪ 当事件驱动程序等待事件时,它不占用很多资源。事
件驱动程序与过程式程序最大的不同就在于,程序不 再不停地检查输入设备,而是呆着不动,等待消息的 到来, 每个输入的消息会被排进队列,等待程序处理它 。如果没有消息在等待,则程序会把控制交回给操作 系统,以运行其他程序。
5.1 Windows程序的基本结构
▪ (1) 带有可拖放控件的Windows窗体可视化设 计器。
▪ (2) 包含语句结束、语法检查和其他智能感知功 能的识别代码编辑器。
▪ (3) 集成的编译和调试。 ▪ (4) 用于创建和管理应用程序文件的项目管理工
具。
5.1 Windows程序的基本结构
❖这些功能类似于以前版本的Visual Basic和 Visual C++中的功能,但Visual Studio .NET进一步扩展了这些功能,以便为开发 Windows应用程序提供良好的环境。
▪ 事件简化了编程。操作系统只是简单地将消息传送给 对象,由对象的事件驱动程序确定事件的处理方法。 操作系统不必知道程序的内部工作机制,只是需要知 道如何与对象进行对话,也就是如何传递消息。
5.2 窗体、属性、事件
❖ 要讲事件,必然要讲到委托(delegate)。委托可以 理解成为函数指针,不同的是委托是面向对象, 而且是类型安全的。
5.1 Windows程序的基本结构
❖Visual Studio .NET集成开发环境是围绕 .NET Framework构建的,该框架提供了一 个有条理的、面向对象的、可扩展的类集 ,它使用户得以开发丰富的Windows应用 程序。通过使用Windows“窗体设计器”来 设计窗体,用户就可以着手创建传统的 Windows应用程序和客户机/服务器应用程 序。用户可对窗体指定某些特性并在其上 放置控件,然后编写代码以增加控件和窗 体的功能,还可以从其他窗体中继承。
5.2 窗体、属性、事件
❖ 2.属性
▪ C# 使程序员可以创造新的声明性信息的种类,称为属 性 (attribute)。然后,程序员可以将这种属性附加到各 种程序实体,而且在运行时环境中还可以检索这些属 性信息。例如,Windows窗体的属性可以决定窗体的 外观和行为,其中常用的属性有:名称(Name)属性 、标题(Text)属性、控制菜单属性和影响窗体外观的 属性。
❖ 我们可以把事件编程简单地分成两个部分:事件 发生的类(书面上叫事件发生器)和事件接收处 理的类。事件发生的类就是说在这个类中触发了 一个事件,但这个类并不知道哪个个对象或方法 将会加收到并处理它触发的事件。所需要的是在 发送方和接收方之间存在一个媒介。这个媒介在 .NET Framework中就是委托(delegate)。在事件 接收处理的类中,我们需要有一个处理事件的方 法。
5.1 Windows程序的基本结构
❖ 对于Windows程序开发,就像普通的终端程序一 样,用户可以在普通的文本编辑器(如记事本程序 )中手动创建、调用.NET方法和类,然后在命令行 编译应用程序,并分发产生的可执行程序。而最 普遍的Windows应用程序开发方法是使用Visual Studio .NET。使用Visual Studio .NET创建 Windows源自文库用程序实质上创建的是与手动创建的 应用程序相同的应用程序。但是Visual Studio .NET提供的工具使应用程序的开发更快、更容易 和更可靠。这些工具包括:
5.2 窗体、属性、事件
▪ C#中以类Form来封装窗体,一般来说,用户设计的窗 体都是类Form的派生类,用户窗体中添加其他界面元 素的操作实际上就是向派生类中添加私有成员。
▪ 当新建一个Windows应用程序项目时,C#就会自动创 建一个默认名为Form1的Windows窗体。
▪ 属性是通过属性类的声明定义的,属性类可以具有定 位和命名参数。属性是使用属性规范附加到 C# 程序中 的实体上的,而且可以在运行时作为属性实例检索。
5.2 窗体、属性、事件
❖属性和字段的区别: 属性是逻辑字段;属 性是字段的扩展,源于字段;属性并不占 用实际的内存,字段占内存位置及空间 。 属性可以被其它类访问,而大部分字段 不能直接访问。属性可以对接收的数据范 围作限定,而字段不能。(也就是增加了 数据的安全性)最直接的说:属性是被“ 外部使用”,字段是被“内部使用”。
第5章 Windows应用程序
5.1 Windows程序的基本结构
❖在典型的 Windows 应用程序中,由于有了 图形用户界面,操作系统启动之后的几乎 所有操作都是为响应用户操作(如移动鼠 标、选择菜单选项或键入某些文本)而发 生的。这些操作触发“事件”,然后调用 应用程序中称为“事件处理程序”的特殊 方法。Windows 程序所执行的几乎任何操 作都是由事件处理程序启动的。未生成任 何事件时,程序将只保持现有状态,不执 行任何操作。
❖典型的Windows窗体程序通常包括窗体 (Forms)、控件(Controls)和相应的事件 (Events)。
5.2 窗体、属性、事件
❖ 1.窗体
▪ Windows窗体和控件是开发C#应用程序的基础,窗体 和控件在C#程序设计中扮演着重要的角色。在C#中, 每个Windows窗体和控件都是对象,都是类的实例。
5.2 窗体、属性、事件
❖3.事件
▪ Windows是事件驱动的操作系统,对Form类的 任何交互都是基于事件来实现的。C#事件就是 基于Windows消息处理机制的,只是封装的更 好,让开发者无须知道底层的消息处理机制, 就可以开发出强大的基于事件的应用程序来。
▪ 在以往我们编写这类程序中,往往采用等待机 制,为了等待某件事情的发生,需要不断地检 测某些判断变量,而引入事件编程后,大大简 化了这种过程:
5.2 窗体、属性、事件
▪ 使用事件,可以很方便地确定程序执行顺序。 ▪ 当事件驱动程序等待事件时,它不占用很多资源。事
件驱动程序与过程式程序最大的不同就在于,程序不 再不停地检查输入设备,而是呆着不动,等待消息的 到来, 每个输入的消息会被排进队列,等待程序处理它 。如果没有消息在等待,则程序会把控制交回给操作 系统,以运行其他程序。
5.1 Windows程序的基本结构
▪ (1) 带有可拖放控件的Windows窗体可视化设 计器。
▪ (2) 包含语句结束、语法检查和其他智能感知功 能的识别代码编辑器。
▪ (3) 集成的编译和调试。 ▪ (4) 用于创建和管理应用程序文件的项目管理工
具。
5.1 Windows程序的基本结构
❖这些功能类似于以前版本的Visual Basic和 Visual C++中的功能,但Visual Studio .NET进一步扩展了这些功能,以便为开发 Windows应用程序提供良好的环境。
▪ 事件简化了编程。操作系统只是简单地将消息传送给 对象,由对象的事件驱动程序确定事件的处理方法。 操作系统不必知道程序的内部工作机制,只是需要知 道如何与对象进行对话,也就是如何传递消息。
5.2 窗体、属性、事件
❖ 要讲事件,必然要讲到委托(delegate)。委托可以 理解成为函数指针,不同的是委托是面向对象, 而且是类型安全的。
5.1 Windows程序的基本结构
❖Visual Studio .NET集成开发环境是围绕 .NET Framework构建的,该框架提供了一 个有条理的、面向对象的、可扩展的类集 ,它使用户得以开发丰富的Windows应用 程序。通过使用Windows“窗体设计器”来 设计窗体,用户就可以着手创建传统的 Windows应用程序和客户机/服务器应用程 序。用户可对窗体指定某些特性并在其上 放置控件,然后编写代码以增加控件和窗 体的功能,还可以从其他窗体中继承。
5.2 窗体、属性、事件
❖ 2.属性
▪ C# 使程序员可以创造新的声明性信息的种类,称为属 性 (attribute)。然后,程序员可以将这种属性附加到各 种程序实体,而且在运行时环境中还可以检索这些属 性信息。例如,Windows窗体的属性可以决定窗体的 外观和行为,其中常用的属性有:名称(Name)属性 、标题(Text)属性、控制菜单属性和影响窗体外观的 属性。
❖ 我们可以把事件编程简单地分成两个部分:事件 发生的类(书面上叫事件发生器)和事件接收处 理的类。事件发生的类就是说在这个类中触发了 一个事件,但这个类并不知道哪个个对象或方法 将会加收到并处理它触发的事件。所需要的是在 发送方和接收方之间存在一个媒介。这个媒介在 .NET Framework中就是委托(delegate)。在事件 接收处理的类中,我们需要有一个处理事件的方 法。
5.1 Windows程序的基本结构
❖ 对于Windows程序开发,就像普通的终端程序一 样,用户可以在普通的文本编辑器(如记事本程序 )中手动创建、调用.NET方法和类,然后在命令行 编译应用程序,并分发产生的可执行程序。而最 普遍的Windows应用程序开发方法是使用Visual Studio .NET。使用Visual Studio .NET创建 Windows源自文库用程序实质上创建的是与手动创建的 应用程序相同的应用程序。但是Visual Studio .NET提供的工具使应用程序的开发更快、更容易 和更可靠。这些工具包括:
5.2 窗体、属性、事件