第7章创建用户定制控件
- 格式:ppt
- 大小:64.00 KB
- 文档页数:13
第七章面向对象的程序设计本章是面向对象的程序设计。
与第五章介绍的面向过程的结构化程序设计不同,主要介绍面向对象程序设计的基础知识,包括面向对象的基本概念以及Visual FoxPro支持的面向对象的编程技术,详尽介绍了对各类控件的选择与使用方法。
在对诸如表单等各类控件对象的设计、操作上,面向对象的编程技术有自己的独特之处,但在所有对象的各种事件和方法的程序代码设计中,仍然使用到结构化的程序设计方法。
本章的主要内容是面向对象程序设计的理论基础,其程序设计的基本目标是设计出能在可视化环境下运行的应用程序窗口界面—表单。
7.1 学习提要1.学习目标与要求通过本章学习,读者应达到以下要求:⑴了解对象、类等基本概念;⑵理解对象的属性、方法和事件;⑶熟练掌握表单的基本设计、操作和应用;⑷掌握常用控件的设计与使用。
⑸熟练掌握常用事件、方法的过程代码的设计方法。
⑹了解自定义类的创建和使用方法。
2.重点与难点:⑴本章重点:对象与类以及属性、方法和事件等基本概念;表单的设计与应用;常用控件属性、事件和方法的选择与运用。
⑵本章难点:本章的重点即为本章的难点3.主要知识点⑴面向对象的概念①对象、类②属性、方法、事件③Visual FoxPro 中的基类⑵表单的创建与基本操作①表单的创建使用“窗体设计器”或“表单向导”创建表单。
②表单的修改、运行使用“窗体设计器”编辑修改表单。
使用菜单或命令方式运行表单。
③表单的属性、事件和方法表单常用属性的设置,表单的常用事件、常用方法。
④设置表单的数据环境数据环境的概念,数据环境的设置。
⑶表单常用控件①表单常用控件的基本操作控件对象的选定,移动位置,改变大小,剪切、复制与粘贴,删除,布局设置。
②常用控件对象标签控件,命令按钮与命令按钮组控件,文本框与编辑框控件,选项组和复选框控件,列表框和组合框控件,容器与表格控件,页框控件,计时器与微调控件,图像控件等。
③控件对象的常用属性设置Caption属性,Name属性,Alignment属性,ButtonCount属性,BackColor属性,BorderColor属性,BorderStyle属性,Enabled属性,ForeColor属性,InputMask属性,PasswordChar属性,Picture属性,Height属性,Width属性,Left属性,Top属性,Value属性,Visible属性,FontName属性,FontSize属性,ControlSource属性。
第六章表单的创建与使用6.1 面向对象程序设计概述1. 基本概念 P161-165面向对象的程序设计是通过对类、子类和对象等的设计来体现的,类是面向对象程序设计技术的核心。
类:定义了对象特征以及对象外观和行为的模板。
类的特征:1)封装性:隐藏了类中对象的内部数据或操作细节,只看到外表信息。
2)继承性:任何类都可以从其它已有的类中派生,新类保持了父类中的行为和属性,但增加了新的功能。
体现了面向对象设计方法的共享机制。
3)多态性:相同的操作可作用于多种类型的对象上,并获得不同的结果。
4)抽象性:提取一个类或对象与众不同的特征,而不对该类或对象的所有信息进行处理。
基类:系统本身提供的类称为基类。
基类包括容器类和控件类。
容器类是其他对象的集合,如表格、选项按钮组;控件类是单一的对象,不包含其他对象,如命令按钮、文本框。
子类:以其他类定义为起点,对某一对象所建立的新类。
新类将继承任何对父类所做的修改。
类库:存储类的文件,每一个以可视方式设计的类都存储在一个类库中。
类库文件的扩展名为 .VCX 。
P216对象:是类的一个实例,包括了数据和过程。
具有所在类所定义的全部属性和方法。
VFP有两种对象:容器对象和控件对象。
属性:控件、字段或数据库对象的特性。
事件:由对象识别的一个动作。
方法:与对象相联系的由程序执行的一个处理过程,即处理事件的一组代码。
用户不可以为对象创建新的事件,但可以创建新的方法程序。
2. Visual FoxPro 基类 P166从下述 Visual FoxPro 基类中,可以派生子类或创建对象。
容器命令组控件微调标签表单命令按钮复选框OLE 容器控制线条表单集选项组列表框OLE 绑定型控制分隔符 # 表格选项按钮 # 文本框自定义形状标头 # 页框组合框工具栏图象列 # 页面 # 编辑框计时器注:# 这些类是父容器的集成部分,在类设计器中不能子类化。
基类事件的最小集合 P167事件说明Init 当对象创建时激活。
《Power Builder》课程教学大纲课程名称:Power Builder英文名称:Power Builder课程编码:适用专业:数据库专业、计算机应用专业、软件技术专业学 时:64(其中16节实验课)学 分:3编 写 者:杜 毅 编写时间:2005年5月26日审 核 者: 审核时间: 年 月 日一、课程性质、目的和任务PowerBuilder程序设计是目前流行的数据库前端开发工具,通过本课程的学习,使学生掌握PowerBuild8.0的基本编程方法,可以使用PowerBuild8.0开发小型数据库应用系统。
教师应从最基本的概念出发,介绍PowerBuilder的开发过程、开发思路以及开发方法,理论与实际相结合,培养学生的阅读程序、分析程序、独立编写程序的能力。
二、课题和课时分配章节内容学时第一章基础知识2第二章PowerBuilder简介2第三章PowerScript语言简介4第四章SQL语言6第五章在PowerBuilder环境中操作数据库4第六章初步体验Power Builder的开发方法4第七章用户界面设计6第八章数据窗口技术8第九章用户对象与软件可重用6第十章高级专题6合计48三、课程内容第一章基础知识第一节数据库应用模式的发展1.主机应用模式2.文件服务器应用模式3.客户/服务器应用模式4.文件服务器与客户/服务器的数据库操作5.分布式计算机应用模式6.Web网络应用模式教学要求:了解以上六种数据库应用模式的特点与使用情况。
第二节数据库应用系统开发方法概述1.结构化生命周期法2.快速原型法3.面向对象方法面向对象的基本概念面向对象的分析与设计面向对象技术在PowerBuilder中的实现4.PowerBuilder的开发方法教学要求:掌握结构化生命周期法、快速原型法方法的思想。
重点掌握并领会面向对象方法的思想以及在PB中的实现方法。
第二章 PowerBuilder简介1.PowerBuilder的特点2.PowerBuilder8.0的新特性3.PowerBuilder8.0对象概述对象、属性与事件,PowerBuilder库(Library),应用(Application)对象,窗口(Window)对象,数据窗口(DataWindow)对象,菜单(Menu),全局函数(Global function),查询(Query),结构(Structrue),用户(User)对象,工程(Project)对象4.PowerBuilder8.0的开发环境画板(Painter),PowerBuilder窗口,定制工具栏教学要求:了解PowerBuilder的特点与PowerBuilder8.0的新特性熟悉PowerBuilder8.0的对象和开发环境。
演练:使用Visual C# 创作用户控件Visual Studio .NET 2003用户控件提供了一种创建和重用自定义图形界面的方法。
用户控件本质上是具有可视化表示形式的组件。
因此,它可能包含一个或多个Windows 窗体控件、组件或代码块,它们能够通过验证用户输入、修改显示属性或执行作者所需的其他任务来扩展功能。
可以按照与其他控件相同的方式,将用户控件置于Windows 窗体中。
在本演练的第一部分,创建一个名为ctlClock 的简单用户控件。
在本演练的第二部分通过继承扩展ctlClock 的功能。
创建项目创建新的项目时应指定其名称,以设置根命名空间、程序集名称和项目名称,并确保默认组件将位于正确的命名空间中。
创建ctlClockLib 控件库和ctlClock 控件1.在“文件”菜单上,指向“新建”,然后选择“项目”以打开“新建项目”对话框。
2.从“C# 项目”列表中选择“Windows 控件库”项目模板,然后在“名称”框中键入ctlClockLib。
注意“Windows 控件库”模板在Visual C# .NET 的标准版中不可用。
有关更多信息,请参见Visual C# 标准版的功能。
默认情况下,项目名称ctlClockLib也被分配到根命名空间中。
根命名空间用于限定程序集中的组件名。
例如,如果两个程序集都提供名为ctlClock 的组件,则可以使用ctlClockLib.ctlClock指定ctlClock 组件。
在解决方案资源管理器中,右击“UserControl1”并从快捷菜单中选择“查看代码”。
3.找到Class语句public class UserControl1,将UserControl1更改为ctlClock以更改组件的名称。
注意默认情况下,用户控件从系统提供的UserControl类继承。
UserControl类提供所有用户控件要求的功能,并实现标准方法和属性。
4.找到构造函数public UserControl1(),将UserControl1 更改为ctlClock。
4.0 创建用户控件在Visual Studio 2010中创建用户控件,就像创建Web页面中创建控件一样,其操作方法比较简单,并且一旦创建成功之后,就可以在多个页面中重复使用。
1.创建用户控件文件首先,在已经创建好的Web项目中,右击目录结构,并执行【添加】|【新建项】命令,如图8-1所示。
图8-1 添加Web项然后,在弹出的【添加新项】窗口中,选择左侧列表栏中的【Visual C#项】选项,并在中间的列表栏中,选择【用户控件】选项,如图8-2所示。
图8-2 选择用户控件最后,在【名称】文本框中,更改用户控件的名称,如更改为Userlogin.cs ,并单击【添加】按钮。
2.用户控件添加内容当用户创建用户控件之后,会生成一个.ascx 文件。
而.ascx 页面结构与.aspx 页面基本相同。
用户可以在【解决方案管理器】中可以展开.aspx 文件和.ascx 文件进行对比,其结构并没有太大的变化,如图8-3所示。
图8-3 用户控件结构用户控件中并没有“<html><body>”等标记,因为.ascx 页面作为控件被引用到其他页面,引用的页面(如.aspx 页面)其中已经包含<body><html>等标记。
如果用 当用户在【添加新项】的中间栏中,选择某个选项时,则在右侧栏中显示该选项的相关介绍。
户控件中使用这样的标记,可能会造成页面布局混乱。
在【解决方案资源管理器】中,双击.ascx文件,并在【工作区】中显示该文件。
然后,在【设计】模式中,可以添加Label、TextBox和Button等控件,并设计用户登录内容,如图8-4所示。
图8-4 设计用户登录界面在该文件的第一行代码中,使用了@Control指令。
而该指令在前面的章节中已经提到过。
该指令与@Page指令基本相似,在.aspx文件中包含了@Page指令,而在.ascx文件中则不包含@Page指令,该文件中包含@Control指令。