Delphi程序设计基础教程习题答案hzd.docx
《Delphi程序设计基础教程习题答案hzd.docx》由会员分享,可在线阅读,更多相关《Delphi程序设计基础教程习题答案hzd.docx(26页珍藏版)》请在冰豆网上搜索。
Delphi程序设计基础教程习题答案hzd
Delphi程序设计基础教程
第1章Delphi集成开发环境
1.填空题
(1)Delphi是一个集成开发环境,从3程序设计、代码编译、调试,到最布程序的全部工作都可以在这个集成环境中完成。
(2)在Delphi集成环境的主要组成部分中有许多功能强大的工具,如:
3主窗体、
对象树状视图、对象观察器、窗体设计器、代码编辑器工具等。
(3)Delphi集成开发环境的界面分为4个部分,分别是。
主窗口、窗体窗口、代码编辑窗口和对象查看器窗口
(4)对象查看器的功能是:
编辑设置窗体、组件的属性,并为窗体、组件添加事件的响应处理过程
(5)Delphi主窗口由:
标题栏、菜单栏、工具栏和组件板组成,它是打开其他窗口和退出Delphi集成环境的主要界面。
2.选择题
D
(1)对象查看器由组成。
A.标题栏、菜单栏、属性标签和事件标签
B.标题栏、菜单栏、对象选择器和事件标签
C.标题栏、菜单栏、对象选择器和属性标签
D.标题栏、对象选择器、属性标签和事件标签
D
(2)Delphi用来管理用户开发的应用程序中的各个文件,有序地管理可以极大地提高应用程序开发的质量和速度。
A.单元B.组件C.属性D.项目
B(3)用来编写应用程序的代码。
A.调试器窗口B.代码编辑窗口
C.报表生成器窗口D.数据库桌面窗口
B(4)代码编辑窗口分为左、右两部分:
。
A.左边是单元代码窗口,右边是单元浏览器窗口
B.左边是单元浏览器窗口,右边是单元代码窗口
C.左边是单元调试窗口,右边是单元浏览器窗口
D.左边是单元浏览器窗口,右边是单元调试窗口
A(5)属性选项卡即标签名为“Properties”的选项卡,用于设置当前组件的属性,属性选项卡是一个两列的表格,。
A.左列是属性标题,右列是属性值
B.左列是组件名称,右列是事件名
C.左列是属性标题,右列是事件名
D.左列是组件名称,右列是属性值
C(6)事件选项卡即标签名为“Events”的选项卡,用于为当前组件添加各种响应事件(如单击、拖曳事件等),它随对象选择器中的所选组件而发生变化。
事件选项卡为一个两列的表格,,默认时右列为空,在空格处双击则可以为当前组件添加事件,并进入代码编辑器窗口。
A.左列是属性标题,右列是属性值
B.左列是组件名称,右列是事件名
C.左列是事件名称,右列是事件处理过程
D.左列是组件名称,右列是属性值
ab(7)在项目管理器中列出了当前项目中的各个,用户可以对它们进行操作。
A.项目文件和单元文件B.项目文件和窗体文件
C.项目文件和对象映射文件D.单元文件和窗体文件
3.判断题
(1)Delphi的状态栏不过是把一些常用的菜单命令以图标按钮的方式显示出来,以便于快速访问。
(F)
(2)对象选择器为一个下拉列表框,列表框中是可供选择的窗体以及当前窗体上放置的所有文件。
(T)
(3)单元文件(.pas)是组成应用源代码的主要部分,无论是窗体事件处理过程还是单独的源代码都保存在其中。
(T)
4.简答题
(1)Delphi的集成开发环境由哪几个主要部分组成,各部分有什么功能
答:
Delphi集成开发环境的界面分为4个部分,分别是主窗口、窗体窗口、代码编辑窗口和对象查看器窗口。
,。
。
。
1、主窗口:
由标题栏、菜单栏、工具栏和组件板组成,它是打开其他窗口和退出Delphi集成环境主要界面。
2、窗体窗口的顶端水平条是窗体的标题栏,结构与主窗口的标题栏相似,由图标、窗体名称和用于控制窗体的最小化、最大化、关闭按钮组成。
窗体窗口的标题栏显示了窗体的当前标题。
一般新窗体将会用默认名字Form1命名。
当然,用户可以通过对象查看器设置窗体的标题等属性。
窗体也是窗口的设计界面,用户可以往窗体中添加各种组件,然后再对组件的属性进行设置。
这样使得整个应用程序的编辑过程可视化和易掌握。
3、代码编辑窗口:
用来编写应用程序的代码。
代码编辑窗口的标题栏显示当前单元文件的文件名,默认名为。
代码编辑窗口分为左右两部分:
左边是单元浏览器窗口,右边是单元代码窗口。
单元浏览器窗口以树形分支的形式列出了单元的构成
4、对象查看器窗口,它的功能是编辑设置窗体、组件的属性,并为窗体、组件添加事件的响应处理过程。
(2)Delphi集成开发环境的界面分为哪4个部分
答:
Delphi集成开发环境的界面分为4个部分,分别是主窗口、窗体窗口、代码编辑窗口和对象查看器窗口
(3)对象查看器的功能是什么
答:
对象查看器窗口,它的功能是编辑设置窗体、组件的属性,并为窗体、组件添加事件的响应处理过程。
(4)怎样修改窗体或组件的属性
从窗体上选择组件,或从对象选择器中选择窗体或组件,使之成为当前组件后,就可以用对象查看器窗口中的属性选项卡来设置属性了。
根据属性标题的情况,设置属性可分为4种情况。
第一种情况是单击属性标题后,直接在属性值编辑框中输入属性的数值或字符串,如
Name、Caption、Left、Top等属性
第二种情况是属性值由Delphi提供可选项。
。
这时,用鼠标单击属性标题后,属性值马上变成一个下拉列表框。
用户可单击下拉按钮打开列表框,从中选择所需的属性值。
可选项分两种,一种是文字可选项,另一种是图形加文字形式的可选项,
第三种情况是通过对话框来设置属性值。
第四种情况是属性带有子属性。
(5)一个Delphi应用程序的源文件有哪些,运行后又生成了哪些文件,各文件的含义是什么
设计阶段:
项目文件(.DPR)、单元文件(.PAS)和窗体文件(.DFM)等
编译阶段产生的,如对象映射文件(.DSM)、编译单元文件(.DCU)等。
当然,项目中还包括一些非Delphi生成的文件,如位图、图标、鼠标指针等资源文件。
项目文件对应用至关重要。
它由Delphi自动建立,一般用户不需要改变它。
项目文件是真正意义上的Pascal源代码文件。
它描述了整个应用程序的结构及启动代码
单元文件是组成应用源代码的主要部分,无论是窗体事件处理过程还是单独的源代码都保存在单元文件中。
单元文件可以分为两种:
有窗体文件和无窗体文件。
每一个窗体都有相应的窗体文件(.DRM),它保存着窗体和窗体内各个组件的属性,而且每个窗体都有一个单元文件,用于编写窗体事件处理过程。
窗体文件和单元文件被Delphi自动保存在同一个目录下。
项目的编译过程:
编译单元文件:
Delphi首先将项目中各单元文件编译成以“.dcu”为扩展名的编译单元文件。
第2章Delphi的编程语言
1.填空题
(1)在ObjectPascal中,可以使用大括号、小括号和星号组合、双斜线你表示注释。
(2)Delphi支持的数据类型有整型、字符型、布尔型、枚举型、子界型和实型
(3)ObjectPascal中的算术运算符有算术运算符、逻辑运算符、关系运算符、位运算符、指针运算符和集合运算符
(4)Delphi中可以构成条件语句的有if语句和case语句
(5)Delphi中可以构成循环语句的有for…do、repeat…until和while…do语句
2.选择题
(1)下列符号中哪些可以作为自定义的标识符D
A.MyConstB.ANDC.ProgramD.type
(2)设n为整型变量,且已赋值为1984,则表达式“(nmod100)div10”表示B。
A.分离出个位数字B.分离出十位数字
C.分离出百位数字D.分离出千位数字
(3)以下枚举类型定义正确的是C。
A.typeMyChar=('a','b,','c');B.typenum=(1..5,8..10);
C.typeMyColor=(red,yellow,green);D.typeMyNum=,,;
(4)下列子界类型定义正确的是B。
A.typea=10..9;B.typea=1..10;
C.typea=a..f;D.typea=..;
3.是非题
(1)常量是在程序运行中值可以发生改变的量。
FF
)
(2)变量是在程序运行中值可以发生改变的量。
T(
)
(3)在ObjectPascal中,可以用var关键字声明变量。
T
)
(4)在ObjectPascal中赋值语句使用的赋值符号是“=”。
F
)
4.简答题
(1)ObjectPascal语言中的数据类型有哪些
(2)说明for、while和repeat这3种循环语句的区别。
(3)函数与过程的区别是什么
(4)“exp(y*ln(x))”相当于什么运算
第3章Delphi窗体与组件
1.填空题
(1)窗体是应用程序的操作界面,是放置组件的最常用的容器。
创建窗体的过程是选择【File】|【New】|【Application】,即可新建一个应用程序。
(2)一般情况下,可以通过方法直接在属性编辑器中输入的属性的值,另一种是在代码中设置和设置组件属性的值。
(3)Edit组件与Memo组件不同之处在于Edit组件处理的是单行文本,而Memo处理的是多行文本。
(4)ListBox组件与ComboBox组件的区别是组合框一次只能显示一条信息,要浏览全部信息,需要单击框旁边的三角按钮。
(5)遍历ListBox组件中的选项的过程是;添加选项的过程是Add;删除选项的过程是Delete;清空选项的过程是Clear。
2.选择题
(1)在Delphi中,所谓MDI,意思是B。
A.多媒体接口B.多文档界面
C.多用户平台D.多数据操作
(2)一个MDI程序至少应包括两种类型的窗体:
一个是“父”窗体;另一个是“子”窗体,它的FormStyle属性应当设为。
A.fsMDIChildB.fsMDIForm
C.fsMDINormalD.fsNormal
(3)通过在ObjectInspector(对象查看器)中设置组件的属性可调整组件的尺寸。
A.Left和TopB.Height和Width
C.Left和WidthD.Height和Top
(4)在RadioGroup组件中,调整,可以指定单选按钮组中当前被选中的单选按钮。
P125
A.ItemIndex属性B.Items属性
C.TabOrder属性D.Tag属性
(5)在设计时给Memo组件增加一些显示内容,可以单击值右侧的省略号按钮,打开【StringListeditor】(字符编辑器)对话框,在其中输入文本。
A.Caption属性B.Hint属性
C.Lines属性D.Text属性
(6)在程序运行时,如果要给Memo组件增加显示内容,可以使用方法,每调用该方法一次,存储框中就增加一行。
A.addB.insertC.creatD.copy
3.是非题
(1)ListBox组件的常用方法有:
Clear、Add、Delete、Insert、ScreentoClient。
(
1)
(2)ScrollBar为滚动条组件,可以设置文本框的文字滚动。
(
1)
(3)ListBox和ComboBox组件有相同的功能。
(
1)
(4)ListBox和ComboBox组件都有Sorted属性。
(
0)
4.简答题
(1)窗体的位置用什么属性表示窗体的大小用什么属性表示
(2)窗体的标题栏内容在什么属性中设置
(3)举例说明,你经常使用的应用程序中,哪些应用程序采用的是一般窗体哪些应
用程序采用的是MDI窗体
(4)Label组件的快捷键如何设置如何使用
(5)按钮组件、单选组件、复选组件在使用方面的区别是什么
(6)Edit组件、MaskEdit组件、SpinEdit组件、Memo组件、RichEdit组件的各自特点是什么
(7)RadioGroup组件是通过哪个属性来调整按钮数量和提示内容的又是通过哪个属性返回选中按钮值的
(8)MaskEdit组件设置掩码格式的属性是哪个如何设置类似SH123499-X的格式(其中SH为固定字母,不用输入,123499为任意六位数字,-为固定分隔符,X为任意一个字母)
(9)ListBox组件、CheckListBox组件和ComboBox组件的各自特点是什么
第4章菜单设计
1.填空题
(1)菜单命令灰显可以通过设置菜单命令的Enabled来实现,当该属性为True时,菜单命令有响应;当该属性为False时,菜单命令灰显,不响应鼠标和键盘操作。
(2)有时想将菜单或菜单命令隐藏起来,这可利用菜单命令的Visible来实现,当该属性为True时菜单命令可见;属性为False时,则该菜单命令隐藏。
(3)在运行程序时,可以让菜单命令根据运行的情况来调整菜单命令的文本内容,这主要通过菜单命令的Caption来实现。
(4)设计单选菜单命令,必须保证两个条件:
首先这一组菜单命令位于同一下拉菜单或同一级联菜单中,而且它们的GroupIndex属性必须相同;其次RadioItem都是True。
2.选择题
(1)希望菜单项显示“打印(P)”(快捷键为Alt+P),则可在该菜单项的Caption属性中输入
B。
A.打印(\
P)
(2)如果一个菜单中的菜单命令过多,可以按功能将菜单命令分为若干组,组与组之间用分割线隔开。
在Delphi中,菜单分割条也是一项菜单命令,只不过该菜单命令的Caption属性为D。
A.“_”(下划线)B.C.------D.“-”(减号)
(3)给菜单命令添加图标后,使用菜单命令的Checked属性时,将C。
A.出现“√”标记B.出现“·”标记
C.出现“…”标记D.出现菜单命令图标下凹
(4)所谓快捷菜单就是B鼠标时,在鼠标当前位置弹出的菜单。
A.左击B.右击C.双击D.拖曳
3.判断题
(1)设置菜单命令复选标记,只要把菜单命令的Enabled属性设置为True,该菜单项就有复选标记,该属性为False时,没有复选标记。
(F)
(2)在菜单命令中,所谓快捷键,就是指在不打开菜单的情况下,直接使用预先设置的组合键就可以执行某个菜单命令项。
(T)
(3)菜单栏中的主菜单项只能有快捷键,而不能有热键。
F
)
4.简答题
(1)菜单命令的作用是什么
(2)如何在菜单中设计快捷键如何在菜单中添加“分割条”
(3)快捷键和热键的区别是什么
(4)菜单的单选、复选、灰显、隐藏等是如何设计的
(5)菜单模板的作用是什么
(6)如何手工指定快捷菜单的位置
(7)思考一下,如何用最简单的方法,使菜单一般情况下只
显示最近刚用过的菜单项,并在该菜单列最下方显示【】,
当选择【】时,才显示所有菜单项,如图所示。
图紧缩菜单
第5章对话框、工具栏和状态栏设计
1.填空题
(1)Delphi中包括4种通用的文件对话框,它们分别是:
、、和。
打开文件对话框组件、保存文件对话框组件、打开图像文件对话框组件和保存图像文件对话框组件。
(2)如果要打开的文件类型是文本文件,则必须对TOpenDialog对话框组件的defaultext和
filer属性值进行设置,应分别设置为.txt和文本文件(*.txt)|*.txt。
(3)工具栏一般位于窗口的上部,可以由面板组件和快捷按钮组成。
状态栏一般位于窗口的底部,用于显示当前的状态及一些提示信息。
2.选择题
(1)如果要在程序运行时显示一个保存文件对话框,则可使用TSaveDialog组件的
C方法。
A.CreateB.DestroyC.ExecuteD.Assign
(2)设置打开文件对话框组件的Filter属性,使得打开的文件类型为图像文件(*.bmp,
*.ico,*.wmf)。
正确的设置为D。
A.Filter:
='图像文件(*.bmp;*.ico;*.wmf)|*.bmp;*.ico;*.wmf'
B.Filter:
='图像文件|*.bmp,*.ico,*.wmf'
C.Filter:
='图像文件(*.bmp;*.ico;*.wmf)|*.bmp|*.ico|*.wmf'
D.Filter:
='图像文件(*.bmp;*.ico;*.wmf)|*.bmp,*.ico,*.wmf'
D(3)如果想输入简单的字符串信息,使用D函数可以实现。
A.MessageDlg()B.ShowMessage()C.ShowMessageFmt()D.InputBox()
3.判断题
(1)公共对话框组件所提供的对话框都是模式对话框。
T(
)
(2)公共对话框组件都具有Execute方法。
F
(
)
(3)工具栏上的按钮无需添加OnClick事件。
T
(
)
4.简答题
(1)Delphi有哪几类对话框
(2)
(3)
(4)
(2)在什么情况下对话框的Execute函数返回True
(3)在TFindDialog对话框组件和TReplaceDialog对话框组件中,OnFind事件什么时候起作用一般应编写什么功能的代码
(4)消息框和输入框的功能是什么
(5)在Delphi中可以用哪些组件建立工具栏
(6)状态栏的主要功能是什么
第6章Delphi多媒体应用
1.填空题
(1)TShape组件可以显示一些几何图形,其中它的Color属性可以设定几何图形的填充图案和颜色,Pen属性可以设定几何图形的外框特性,Shape属性可以决定几何图形形状。
(2)在窗体上作图,实际上是在窗体的DrawMode属性上作图。
(3)TMediaPlayer组件可以播放的媒体文件有*.wav;*.mp3*.avi、、等。
(4)TListView组件可以将信息以列表形式显示,它们分别是大图标、小图标、简单列表、详细列表、、
和。
2.选择题
(1)如果要在Canvas画布上显示字符串,可以使用C方法。
A.LineToB.RectangleC.TextOutD.Ellipse
(2)TImage组件可以显示各种以文件形式存储的图像,当其Stretch属性为True时,图像会充满整个组件范围,但有一种文件例外,该文件是B。
A..bmp文件B..ico文件C..wmf文件D..emf文件
(3)既能显示文本又能显示图形的图形栅格的组件是D。
A.StringGrid组件B.ColorGrid组件C.DBGrid组件D.DrawGrid组件
3.判断题
(1)使用TImage组件绘制的图像,在窗体大小改变时,图像会消失,必须重绘。
(0)
(2)使用TPaintBox组件绘制的图像,在窗体大小改变时,图像会消失,必须重绘。
(1)
(3)所有组件都有Canvas画布属性。
F
(
0)
4.简答题
(1)画布对象有什么用途
(2)TImage组件与TPaintBox组件在绘图上有什么不同
(3)在Delphi中如何设计树型层次结构
(4)栅格组件有什么作用
(5)在Delphi中如何添加ActiveX组件
第7章Delphi异常处理与调试
1.填空题
(1)引发一个异常,调用保留字raise,后边跟一个异常类的实例。
(2)所谓异常,可以理解为一种特殊的事件。
当这种特殊的事件发生时,程序正常的执行流程将被打断。
(3)异常处理机制能够确保在发生异常的情况下应用程序不会中止运行,也不会丢失数据或资源。
(4)异常处理机制有两种结构:
一种是try..except结构,另一种是try…finally结构,这两种结构在用法上有很大的区别。
2.选择题
(1)下面C语句会产生类型转换异常。
A.r1:
=StrToFloat('140');
B.r1:
=StrToInt('140');
C.r1:
=StrToFloat('$');
D.r1:
=StrToFloat('')+200;
(2)确保回收分配的资源是程序健壮性的一个关键。
但默认情况下异常发生时程序会在出错点自动退出当前模块,因此Delphi提供了b机制来确保即使在异常发生的情况下释放资源的语句仍能被执行。
A.try…exceptB.try…finallyC.if…then…elseD.while…do
(3)由于异常在处理后即被清除,因而当希望对异常进行多次处理时就需要使用保留字a来重引发一个当前异常。
A.raiseB.exceptC.finallyD.on
(4)自定义异常类以c或其他标准异常类的子类作为祖先类。
A.ExcuteB.ExceptC.ExceptionD.Excepted
(5)在调试程序之前,必须保证程序代码已经没有a错误。
A.语法B.逻辑C.异常D.功能
(6)通过【Run】菜单中的b,一次只执行一行(一个指令),执行到有函数调用的行时,这条命令将跳过函数的内部。
A.【StepOver】命令B.【TraceInto】命令
C.【RuntoCursor】命令D.【RunUntilReturn】命令
(7)