《数据库应用技术――Delphi应用系统开发》-第四章

上传人:我*** 文档编号:136585558 上传时间:2020-06-29 格式:PPT 页数:61 大小:1.34MB
返回 下载 相关 举报
《数据库应用技术――Delphi应用系统开发》-第四章_第1页
第1页 / 共61页
《数据库应用技术――Delphi应用系统开发》-第四章_第2页
第2页 / 共61页
《数据库应用技术――Delphi应用系统开发》-第四章_第3页
第3页 / 共61页
《数据库应用技术――Delphi应用系统开发》-第四章_第4页
第4页 / 共61页
《数据库应用技术――Delphi应用系统开发》-第四章_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《《数据库应用技术――Delphi应用系统开发》-第四章》由会员分享,可在线阅读,更多相关《《数据库应用技术――Delphi应用系统开发》-第四章(61页珍藏版)》请在金锄头文库上搜索。

1、第4章 创建应用程序界面,本章学习要点 l 学习窗体组件的作用及其设计 l 学会为窗体编制事件处理方法程序 l 掌握菜单的设计方法 l 掌握弹出式菜单的设计方法 l 学习有数据源和无数据源窗体的设计方法,应用程序要展示给用户的主要界面形式是窗体,用户要通过程序员提供的窗体来进行操作,或者获取所希望的信息。因此,为计算机信息系统设计美观和友好的应用程序界面,是一项非常重要的内容。窗体是可视化编程中最基本的组件,任何一个可视化编程工具都提供了这一组件。在设计完管理信息系统的数据库之后,就应该为用户设计合适的应用程序窗体了,提供程序与用户交流的一个窗口,可以说,没有窗体,应用程序的框架就很难建立起来

2、。 窗体是Delphi基本的构造模块,Delphi所有的可视化程序设计工作都是在窗体上进行的。在程序运行之后,这些窗体实际上就是显示出来的最主要的人机界面。无论是需要进行信息查看,还是需要对数据库系统中的数据进行添加、修改、删除等编辑操作,信息系统的使用者对数据库中数据所进行的任何操作均在窗体中进行。,4.1 窗体与组件,在Windows环境中,人机交互主要是在一些窗体和对话框中进行的。在Delphi中,窗体指的就是窗口和对话框,进行可视化程序设计一般就是从窗体开始并在窗体中完成的。窗体与组件的关系非常密切。窗体就像一个可以放置东西的桌面,可以根据任务的需要在窗体上放置各种各样的组件。 从程序

3、设计的角度来看,一个窗体对应一个存放源程序的单元文件。其中窗体展示的是程序运行时的操作界面,而单元文件定义了窗体中所有组件的对象(包括属性、事件和方法)以及对它们的操作。,从视觉的角度来看,窗体可以包含很多组件的对象。但这并不是说窗体类包含了组件类型或者说窗体是组件的父类。事实上窗体和组件都是从TComponent类继承下来的,它们都有公共的TObject祖先类。窗体类是从TComponent类派生的TForm类,所以可以将窗体看成一个特殊的组件,如Panel组件。Delphi中的所有组件都被封装在可视化组件库VCL中,集成开发环境中的组件面板就是VCL的实现。 在窗体中进行可视化程序设计时要

4、涉及到VCL组件面板中的组件和在该窗体对应的单元文件上编写代码,这种关系可通过第2章的图2-1来表示:在组件面板上选择需要的组件放在窗体Form上;在对象查看器中设置该组件对象的属性;窗体的单元文件会自动生成窗体中的组件对象的信息以及在单元文件中编写程序处理代码。,4.2 窗体基本控件及其应用,除窗体之外,还有种类繁多、性能各异的其它组件,它们都是Delphi应用程序设计和实现的基本单元。学习Delphi程序设计,首先要学会常用组件的使用方法。在窗体中可以添加各种对象,进行窗体的界面设计。向窗体中添加对象的方法是,首先单击相应组件板的控件图标,接着在窗体的适当位置按下鼠标左键并拖动鼠标,即可画

5、出相应的对象。,在Delphi中,组件是可视化编程的基础,程序员用它来设计用户界面,并且给予应用程序一些非可视化功能。对于两种不同类型的Delphi开发者应用程序开发者(Application Developer)和可视化组件编写者,组件有不同的含义。对于应用程序开发者来说,组件就是从组件面板上得到的一个实实在在的事物,一般被放在窗口上。应用程序开发者可以修改其属性并且建立事件的处理过程,从而得到组件的外观和内在的作用。这个过程的完成,是应用程序开发者工作的核心和主要工作内容。对于组件编写者来说,组件只是对象PASCAL语言中的对象,这些对象可以封装系统提供的行为元素(包括Windows的标准

6、组件),一个组件的代码构成了该组件的全部行为。 由于Delphi提供了丰富且功能强大的组件,程序员就可以集中精力去创建应用程序,而不必从头开始去创建GUI、数据库功能和程序之间的通信。程序员更注重的是程序整体的规划和设计,而不再是怎样编写一句句的重复和冗长的代码。一切都是这么简单,大体的框架总是已经搭好了,紧接着的任务就是根据不同的需要把它们组装起来。如图4-1所示的是Delphi的组件面板。,图4-1 Delphi的组件面板 4.2.1 标签和编辑框 在开发基于对话框应用程序的时候,标签和编辑框组件是利用相当广泛的组件。标签和编辑框的使用是任何一个程序员必须掌握的知识,下面将介绍标签和编辑框

7、的使用方法,1 Label标签 标签是Delphi中最简单的组件,用于显示字符串,通常显示的是文字说明信息。在Windows程序设计过程中,标签(Label)是常用的组件之一,它是从TCustomLabel继承下来的,而TCustomLabel又是从TGraphicControl继承下来的。 由于Label是一个典型的非窗口组件,它没有窗口句柄,也不会有输入焦点,但可以把它与标注的组件关联,以后,当用户按下这个标签的加速字符时(按鼠标无效),输入焦点将自动移到关联的组件上。也就是在标签中设置热键,在Caption属性值中输入含有“var Key: Char); begin if not (ke

8、y in0.9,#8) then key:=#0;/过滤非数字字符,只允许输入09这10个数字以及键盘上的退格键“” end; 掩码编辑框(MaskEdit组件),与编辑框组件大部分的属性和方法都是类似的,主要区别在于它的数据输入有格式要求,常用来定制想要的数据格式。,MaskEdit组件最重要的属性是EditMask,如图4-2所示是设置输入查询条件区、栋文本框EditMask属性时的界面。屏蔽字符串用分号隔成了三部分。第一部分是屏蔽本身,它确定了字符串的格式;第二部分指明了屏蔽字符是否作为数据的一部分,其中0表示屏蔽字符不作为数据的一部分,1表示屏蔽字符作为数据的一部分。第三部分指明了用什

9、么样的字符代替未输入的字符。可以看到,系统以及提供了一系列的标准屏蔽格式,有phone和date等等。当输入的数据不符合要求时,编辑框将不接受输入。,图4-2 MaskEdit组件的EditMask属性设置 Memo组件的文本内容可以是多行显示,其行号是从0开始计算的。它的很多属性和方法都与Edit编辑框类似,不同之处是它提供了一个Lines属性,通过这个属性可以调用一系列方法。Lines常用方法介绍如下:,l 增加一行并返回新行的行号: Memo1.Lines.Add(new string);或 Memo1.Lines.Add(edit1.Text); l 增加一行但不返回新行的行号: Me

10、mo1.Lines.Append(new string);或Memo1.Lines. Append (edit1.Text); l 删除第三行:Memo1.Lines.Delete(2); l 在第三行插入某一行内容:Memo1.Lines.Insert(2,new string); l 把第三行移到第五行:Memo1.Lines.Move(2,4); 3标签和编辑框示例 前面介绍了标签和编辑框组件的一些基本知识,下面通过一个实例来体会一下这些组件的应用。其创建步骤如下。,第一步:在窗体上添加3个Edit组件、1个MaskEdit组件、1个Memo组件、4个Label标签、7个位图按钮。 第二

11、步:添加事件响应代码。每一个编辑框可以分别输入内容,然后按下【】按钮就可以把对应编辑框的内容传递给Memo组件。【】按钮的OnClick事件的代码如下: procedure TForm1.BitBtn1Click(Sender: TObject); begin if edit1.text then Memo1.Lines.Add(edit1.text); /将edit1文本框中的内容递给memo1组件 end; procedure TForm1.BitBtn4Click(Sender: TObject); begin if MaskEdit1.text then Memo1.Lines.Add

12、(MaskEdit1.text); /将掩码编辑框MaskEdit1的内容递给memo1组件 end;,当按下【确定】位图按钮时,把所有不为空的编辑框内容递给memo1组件 procedure TForm1.BitBtn9Click(Sender: TObject); begin if edit1.Text then Memo1.Lines.Add(edit1.text); if edit2.Text then Memo1.Lines.Add(edit2.text); if edit3.Text then Memo1.Lines.Add(edit3.text); if MaskEdit1.Te

13、xt then Memo1.Lines.Add(MaskEdit1.text); /向memo1中添加编辑框中的文本 end;,当按下【取消】位图按钮时,把memo1中的文本清空。 procedure TForm1.BitBtn6Click(Sender: TObject); begin Memo1.Lines.Clear; /清除memo1中的文本 end; 第三步:运行程序。程序代码添加完毕,可以编译、链接并运行程序,程序的运行结果如图4-3所示。 图4-3 程序运行结果,4.2.2 按钮和对话框 在程序设计中,按钮类组件是一种实现人机交互的最常用的组件,都能响应键盘和鼠标事件,用来执行某

14、一功能。使用对话框,可以实现一些简单信息的输入和输出。 1按钮 以下介绍几种常用的按钮类组件。 (1) Button组件按钮 Button组件位于【Standard】页上,主要用来响应鼠标的单击事件。在程序运行时当用户用鼠标单击窗体中的该组件对象时,或是该组件对象处于输入焦点状态(按钮周围有一个虚线框)按下Enter键时,该组件对象的单击事件处理过程被执行。Button组件最常用的属性是Caption属性,用于显示在Button组件上的文本内容,最常用的事件是OnClick事件。,(2) BitBtn组件按钮 BitBtn组件也是一个按钮对象,它在组件面板中的【Additional】页上,作用

15、与Button组件基本相似,只是它在组件上显示了一个图标,使窗口界面看起来更美观。它的几个常用属性如下。 Kind属性:设置位图按钮组件上显示的图标。可以使用该组件指定的默认图标,也可以使用自己通过Image Editor制作的图标,此时Kind属性要设置为bkCustom。 Glyph属性:单击该属性旁边的省略号按钮将打开Picture Editor对话框,通过它可加载图像,加载的位图将自动显示在按钮上。 (3) SpeedButton组件按钮 SpeedButton组件也称为加速按钮或彩色按钮,它可以显示图像和文本,它的属性与BitBtn组件类似,并且也在组件面板中的【Additional

16、】页上,是进行工具,条快速设计的理想部件。它只有一个位图,没有标题。 (4) CheckBox组件按钮 CheckBox组件位于【Standard】页上,该组件主要用来决定是否选取某项内容。可将多个CheckBox组件作为一组与GroupBox一起使用,用来提供一组相关选项的选取,它有以下常用属性。 Alignment属性:用来决定组件的标签放在哪一边。默认值为taRightJustify,此时CheckBox组件的标签在右边;属性值为taLeftJustify时标签位于左边。 Check属性:用来判断CheckBox组件是否被选取。 State属性:用来判断CheckBox组件当前的状态。,(5) RadioButton组件按钮 RadioButton组件位于【Standard】页上。此组件一般不单独使用,通常是多个这样的组件作为一组,在同一组中,同一时刻只能

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号