二级vb选择题

更新时间:2024-05-17 21:37:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章 visual basic程序开发环境

1.Visual Basic集成环境由若干窗口组成,其中不能隐藏(关闭)的窗口是( )。 A) 主窗口 B) 属性窗口 C) 立即窗口 D) 窗体窗口 参考答案:A

【解析】属性窗口、立即窗口和窗体窗口都能隐藏,但主窗口不能。故选A。 2.为了用键盘打开菜单和执行菜单命令,第一步应按的键是( )。 A) 功能键F10或Alt B) Shift+功能键F4 C) Ctrl或功能键F8 D) Ctrl+Alt 参考答案:A 【解析】按F10或Alt键可激活菜单,焦点聚焦到菜单栏上,进而可用键盘打开菜单和执行菜单命令。故选A。 3.VB中有这样一类文件:该文件不属于任何一个窗体,而且仅包含程序代码,这类文件的扩展名是( )。 A) .vbp B) .bas C) .vbw D) .frm

参考答案:B

【解析】.vbp工程文件,包含与管理工程有关的所有的文件和对象清单。 .bas标准模块文件,包含公用的一些变量和过程等代码。

.vbw工作区文件,包含了该工程中各窗体(指开发区窗体,如代码窗、设计窗)的位置。 .frm窗体文件,包含了窗体及窗体中包含的各控件的代码、属性等信息。 故选项B正确。

4. 以下关于VB文件的叙述中,错误的是( )。 A) 标准模块文件不属于任何一个窗体 B) 工程文件的扩展名为.frm C) 一个工程只有一个工程文件 D) 一个工程可以有多个窗体文件 参考答案:B

【解析】工程文件的扩展名为.vbp,故B选项错误。 5. 以下关于VB文件的叙述中,错误的是( )。 A) 标准模块文件不属于任何一个窗体 B) 工程文件的扩展名为.frm C) 一个工程只有一个工程文件 D) 一个工程可以有多个窗体文件 参考答案:B

【解析】工程文件的扩展名为.vbp,故B选项错误。 6. 下列打开\代码窗口\的操作中错误的是( )。 A) 按F4键

B) 单击\工程资源管理器\窗口中的\查看代码\按钮 C) 双击已建立好的控件

第 1 页 共 96 页

D) 执行\视图\菜单中的\代码窗口\命令 参考答案:A

【解析】按F4键打开的是\属性窗口\,故A选项错误。 7. 下列打开\代码窗口\的操作中错误的是( )。 A) 按F4键

B) 单击\工程资源管理器\窗口中的\查看代码\按钮 C) 双击已建立好的控件

D) 执行\视图\菜单中的\代码窗口\命令 参考答案:A

【解析】按F4键打开的是\属性窗口\,故A选项错误。

8. 如果要在窗体上画一个标签,应在工具箱窗口中选择的图标是( )。 A) B) C)

D)

参考答案:B

【解析】标签控件在工具箱中的图标是。而是文本框控件的图标,是按钮控件的图标,是形状控件的图标。

第二章 对象及其操作

1. 在面向对象方法中,不属于\对象\基本特点的是( )。 A) 一致性 B) 分类性 C) 多态性 D) 标识唯一性 参考答案:A

【解析】对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。所以选择A)。 2. 以下关于事件、事件驱动的叙述中,错误的是( )。 A) 事件是可以由窗体或控件识别的操作 B) 事件可以由用户的动作触发 C) 一个操作动作只能触发一个事件

D) 事件可以由系统的某个状态的变化而触发 参考答案:C

【解析】一个操作动作有时会触发一个或多个事件。比如当按下键盘的某键时,会触发KeyDown和Keypress事件。故A选项错误。

3. 在面向对象的程序设计中,可被对象识别的动作称为( )。 A) 方法 B) 事件 C) 过程 D) 函数

参考答案:B

【解析】在VB中可被对象识别的动作称为事件,事件是由用户或系统触发的,触发后就会执行相应的事件过程代码。故选B。

4. 以下关于VB特点的叙述中,错误的是( )。

第 2 页 共 96 页

A) VB中一个对象可有多个事件过程 B) VB应用程序能以编译方式运行

C) VB应用程序从Form_Load事件过程开始执行

D) 在VB应用程序中往往通过引发某个事件导致对对象的操作 参考答案:C

【解析】VB应用程序不一定从From_Load事件开始执行,它是由工程中启动对象决定先从哪儿开始执行。故C选项错误。

5. 以下关于VB的叙述中,错误的是( )。 A) VB采用事件驱动方式运行

B) VB既能以解释方式运行,也能以编译方式运行 C) VB程序代码中,过程的书写顺序与执行顺序无关 D) VB中一个对象对应一个事件 参考答案:D

【解析】VB中一个对象可以对应一个或多个事件,事件可由用户或系统触发,触发后执行相应的事件过程。不过,不一定一个对象的所有事件过程都执行,响应哪个事件过程就执行哪个。故D选项错误。 6. 以下叙述中错误的是( )。

A) Visual Basic 是事件驱动型可视化编程工具

B) Visual Basic应用程序不具有明显的开始和结束语句

C) Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性 D) Visual Basic中控件的某些属性只能在运行时设置 参考答案:C

【解析】VB工具箱中不是所有的控件都具有宽度和高度属性,比如定时器控件Timer、直线控件Line就没有。故C选项错误。

7. 设工程文件中包名称分别为Form1、Form2的两个窗体,且Form1的菜单属性设置如下:

窗体Form1中的程序如下:

Dim Flag As Boolean Private Sub Form_Load() Flag=True End Sub

Private Sub mnu1_Click(index As Integer) If Index=1 Then

If Flag=True Then Form2.show

mnu1(1).Caption=\隐藏窗体2\ Flag=False Else

Form2.Hide

mnu1(1).Caption=\显示窗体2\ Flag=True End If End If

If Index=2 Then End

第 3 页 共 96 页

End Sub

关于上述程序,以下叙述中错误的是( )。 A) Index属性的值可以用来区分控件数组元素 B) Index为1的菜单项的标题可能会改变

C) 两个名称均为Mnu1的菜单项构成一个控件数组 D) 语句Form2.Hide将Form2卸载 参考答案:D

【解析】程序中菜单Mnu1是一个控件数组,它们以Index属性值作为数组下标来区分各元素。在菜单单击事件中,Flag值为真时,显示Form2,同时把索引为1的菜单项标题改为\隐藏窗体2\,然后把Flag标志设为假;当Flag值为假时,隐藏Form2,同时把索引为1的菜单项标题改为\显示窗体2\,然后把Flag标志设为真。窗体Hide方法,只是将窗体隐藏,并没有从内容中卸载。因此D选项错。 8. 在设计窗体时双击窗体的任何地方,可以打开的窗口是( )。 A) 代码窗口 B) 属性窗口

C) 工程资源管理器窗口 D) 工具箱窗口 参考答案:A

【解析】设计窗体时双击窗体的任何地方,默认打开的是代码窗口。故选A。 9. 为了使窗体的大小可以改变,必须把它的BorderStyle属性设置为( )。 A) 1 B) 2 C) 3 D) 4

参考答案:B

【解析】窗体的BorderStyle属性是用来设置窗体的边框样式的。属性值1为Fixed Single,3为Fixed Dialog,4为Fixed ToolWindow,设置为这3个属性值都不能改变窗口大小。2是Sizable,表示窗体大小可以改变。故选B。

10. 为了使窗体左上角不显示控制框,需设置为False的属性是( )。 A) Visible B) Enabled C) ControlBox D) Caption 参考答案:C

【解析】窗体的Visible属性是设置窗体可见不可见;Enabled属性是设置可用不可用;Caption属性是用来设置窗体标题栏上显示的内容;ControlBox属性是设置窗体左上角是否显示控制框,当属性值为True时,显示控制框,否则False时,不显示。故选项C正确。

11. 假定已在窗体上画了多个控件,其中有一个被选中,为了在属性窗口中设置窗体的属性,预先应执行的操作是( )。

A) 单击窗体上没有控件的地方 B) 单击任意一个控件 C) 双击任意一个控件

D) 单击属性窗口的标题栏 参考答案:A

【解析】单击窗体上没有控件的地方,在属性窗口就会出现窗体的各属性,这样就可对窗体的属性进行设置,故A选项正确。单击任意一个控件,在属性窗口中出现的是该控件的属性,故B选项错误;双击任意一个控件,打开的是\代码窗口\,故C选项错误;单击属性窗口的标题栏,属性窗口成为活动窗口,故D选项错误。

第 4 页 共 96 页

12. 窗体上有三个水平滚动条,名称分别为HSRed、HSGreen和HSBlue,取值范围均是0~255,代表颜色的三种基色。改变滚动框的位置,可以改变三种基色的值,从而改变窗体的背景色,如下图所示。

程序代码如下:

Dim color(3)As Integer Private Sub Form_Load() Call fill(color()) End Sub

Private Sub fill(c() As Integer)

Form1.BackColor=RGB(c(1),c(2),c(3)) End Sub

Private Sub HSRed_Change() color(1)=HSRed.Value Call fill(color()) End Sub

Private Sub HSGreen_Change() color(2)=HSGreen.Value Call fill(color()) End Sub

Private Sub HSBlue_Change() color(3)=HSBlue.Value Call fill(color()) End Sub

13.关于以上程序,如下叙述中错误的是( )。 A) color是窗体级整型数组

B) 改变任何一个滚动条滚动框的位置,窗体的背景色将立刻随之改变

C) 3个滚动条Change事件过程中只设置了一个color数组元素的值,调用fill过程失败 D) fill 函数定义中的形式参数是数组型参数 参考答案:C

【解析】当用Dim语句定义数组时,该语句把数值数组中的全部元素都初始化为0,而把字符串数组中的全部元素都初始化为空串。因此color数组中的元素初始值都为0,没有空值,过程调用不会失败。C选项叙述错。 14.在程序运行时,下面的叙述中正确的是( )。

A) 用鼠标右键单击窗体中无控件的部分,会执行窗体的Form_Load事件过程 B) 用鼠标左键单击窗体的标题栏,会执行窗体的Form_Click事件过程 C) 只装入而不显示窗体,也会执行窗体的Form_Load事件过程

D) 装入窗体后,每次显示该窗体时,都会执行窗体的Form_Click事件过程 参考答案:C

【解析】如果窗体是活动的,那么在窗体上按下鼠标右键(尚未松手抬起),即会触发Form_MouseDown事件,松手抬起后,要先触发Form_MouseUp事件,然后再触发Form_Click事件。如果窗体原先是非活动的,还会触发Form_GotFocus事件,并且它最先发生。Form_Load事件是窗体显示之前,加载时触发,单击窗体时不触发。故A

第 5 页 共 96 页

选项错误。

用鼠标左键单击窗体标题栏时,不会执行Form_Click事件过程。故B选项错误。

装入窗体后,每次显示该窗体时或窗体成为活动窗体时,都会执行From_Active窗体的激活事件。故D选项错误。

16.在程序运行时,下面的叙述中正确的是( )。

A) 用鼠标右键单击窗体中无控件的部分,会执行窗体的Form_Load事件过程 B) 用鼠标左键单击窗体的标题栏,会执行窗体的Form_Click事件过程 C) 只装入而不显示窗体,也会执行窗体的Form_Load事件过程

D) 装入窗体后,每次显示该窗体时,都会执行窗体的Form_Click事件过程 参考答案:C

【解析】如果窗体是活动的,那么在窗体上按下鼠标右键(尚未松手抬起),即会触发Form_MouseDown事件,松手抬起后,要先触发Form_MouseUp事件,然后再触发Form_Click事件。如果窗体原先是非活动的,还会触发Form_GotFocus事件,并且它最先发生。Form_Load事件是窗体显示之前,加载时触发,单击窗体时不触发。故A选项错误。

用鼠标左键单击窗体标题栏时,不会执行Form_Click事件过程。故B选项错误。

装入窗体后,每次显示该窗体时或窗体成为活动窗体时,都会执行From_Active窗体的激活事件。故D选项错误。

17. 设窗体的名称为Form1,标题为Win,则窗体的MouseDown事件过程的过程名是( )。 A) Form1_MouseDown B) Win_MouseDown C) Form_MouseDown D) MouseDown_Form1 参考答案:C

【解析】事件过程名格式是:控件名_事件过程名。Form1是窗体控件的名称,Win是窗体的标题,所以窗体的MouseDown事件过程名是:Form1_MouseDown,故选A。

18. 设窗体的名称为Form1,标题为Win,则窗体的MouseDown事件过程的过程名是( )。 A) Form1_MouseDown B) Win_MouseDown C) Form_MouseDown D) MouseDown_Form1 参考答案:C

【解析】事件过程名格式是:控件名_事件过程名。Form1是窗体控件的名称,Win是窗体的标题,所以窗体的MouseDown事件过程名是:Form1_MouseDown,故选A。 19. 编写如下程序:

Private Sub Form_Click() Print \!\End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Print \欢迎!\End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Print \热烈欢迎!\End Sub

程序运行后,单击窗体,输出结果为( )。 A) 欢迎! 热烈欢迎!

第 6 页 共 96 页

Welcome! B) 欢迎! Welcome! 热烈欢迎! C) Welcome! 欢迎! 热烈欢迎! D) Welcome! 热烈欢迎! 欢迎!

参考答案:A

【解析】在窗体事件中,鼠标按键按下激发MouseDown事件,鼠标按钮松开激发MouseUp事件,鼠标按下并松开后激发Click事件,所以这三个事件的顺序是MouseDown、MouseUp、Click,因此输出文字的顺序是\欢迎!\、\热烈欢迎!\、\!\。

20. 在Visual Basic中,所有标准控件都具有的属性是( )。 A) Caption B) Name C) Text D) Value

参考答案:B

【解析】VB标准控件中不同控件具有不同属性,有的相同有的不同,但都具有Name属性。故选B。 21. 能够用于标识对象名称的属性是( )。 A) Name B) Caption C) Value D) Text

参考答案:A

【解析】每个对象都有Name属性,用于识别不同的对象。故选A。 22. 在窗体上添加\控件\的正确的操作方式是( )。 A) 先单击工具箱中的控件图标,再单击窗体上适当位置 B) 先单击工具箱中的控件图标,再双击窗体上适当位置 C) 直接双击工具箱中的控件图标,该控件将出现在窗体上 D) 直接将工具箱中的控件图标拖动到窗体上适当位置 参考答案:C

【解析】在窗体上添加控件有两种方法,一种是直接双击工具箱中的控件图标,该控件就会出现在窗体上,另一种是先单击工具箱中的控件图标,然后在窗体上拖动,该控件就出现在窗体上鼠标拖过的位置。 23. 为了对多个控件执行操作,必须选中这些控件。下列不能选中多个控件的操作是( )。 A) 按住Alt键,不要松开,然后单击每个要选中的控件 B) 按住Shift键,不要松开,然后单击每个要选中的控件 C) 按住Ctrl键,不要松开,然后单击每个要选中的控件

D) 拖动鼠标画出一个虚线矩形,使所选中的控件位于这个矩形内 参考答案:A

【解析】按住Alt键只能选中单个控件,不能同时选中多个控件。故选A。 24. 以下叙述中错误的是( )。

A) 在通用过程中,多个形式参数之间可以用逗号作为分隔符 B) 在Print方法中,多个输出项之间可以用逗号作为分隔符

第 7 页 共 96 页

C) 在Dim语句中,所定义的多个变量可以用逗号作为分隔符 D) 当一行中有多个语句时,可以用逗号作为分隔符 参考答案:D

【解析】一般情况下,输入程序时要求一行只写一条语句。但语句行较短时也可以将多个语句书写在同一行中,这时,语句之间使用冒号分隔。故D选项错误。 25. 以下叙述中错误的是( )。

A) 续行符与它前面的字符之间至少要有一个空格 B) Visual Basic中使用的续行符为下划线(_)

C) 以撇号(′)开头的注释语句可以放在续行符的后面 D) Visual Basic可以自动对输入的内容进行语法检查 参考答案:C

【解析】续行符\与前面的内容至少要保留一个空格,并且续行符只能出现在行尾,后面不能有注释。故选项C错误。

26. 下列有语法错误的赋值语句是( )。 A) y=7=9 B) s=m+n

C) Text1.Text=10 D) m+n=12 参考答案:D

【解析】赋值语句的格式是:变量名=表达式。赋值号左边必须是变量名,不能是表达式或常量。D选项中赋值号左边m+n是表达式,不是变量名,故D选项错误。

30. 设计窗体时,双击窗体上没有控件的地方,打开的窗口是( )。 A) 代码窗口 B) 属性窗口 C) 工具箱窗口 D) 工程窗口 参考答案:A

【解析】双击窗体上没有控件的地方,默认打开\代码窗口\。故选A。 31. 下列打开\代码窗口\的操作中错误的是( )。 A) 按F4键

B) 单击\工程资源管理器\窗口中的\查看代码\按钮 C) 双击已建立好的控件

D) 执行\视图\菜单中的\代码窗口\命令 参考答案:A

【解析】按F4键打开的是\属性窗口\,故A选项错误。

32. 在VB集成环境中要结束一个正在运行的工程,可单击工具栏上的一个按钮,这个按钮是( )。 A) B) C) D)

参考答案:D

第 8 页 共 96 页

【解析】无法重复,运行,添加标准EXE工程,结束运行。D选项正确。

33. 在Visual Basic环境下设计应用程序时,系统能自动检查出的错误是( )。 A) 语法错误 B) 逻辑错误

C) 逻辑错误和语法错误 D) 运行错误 参考答案:A

【解析】VB中系统只能检查出语法错误,不能检查出逻辑错误。故选A。

第三章 程序设计基础

1.若在窗体模块的声明部分声明了如下自定义类型和数组:

Private Type rec Code As Integer Caption As String End Type

Dim arr(5)As rec

则下面的输出语句中正确的是( )。 A) Print arr.Code(2), arr.Caption(2) B) Print arr.Code, arr.Caption

C) Print arr(2).Code, arr(2).Caption D) Print Code(2), Caption(2) 参考答案:C

【解析】定义一个自定义类型的数组,数组元素表示为:数组名(下标).成员名,故选C。 2.以下自定义数据类型的语句中,正确的是( )。 A) Type student

ID As String * 20 name As String * 10 age As Integer End student

B) Type student

ID As String * 20 name As String * 10 age As Integer End Type

C) Type student

ID As String name As String age As Integer End student D) Type

ID As String * 20 name As String * 10 age As Integer End Type student

第 9 页 共 96 页

参考答案:B

【解析】自定义数据类型的语法结构是:

Type 自定义类型名

<成员名1>[(下标)] As<标准类型名1> <成员名2>[(下标)] As<标准类型名2> …… End Type

其中,成员可以定义为定长的或不定长字符串,也可定义为数组。 本题中,B选项符合语法规则,故B选项正确。

3.窗体上有一个名称为Text1的文本框,一个名称为Command1的命令按钮。窗体文件的程序如下:

Private Type x a As Integer b As Integer End Type

Private Sub Command1_Click() Dim y As x

y.a=InputBox(\

If y.a\\2=y.a / 2 Then y.b=y.a * y.a Else

y.b=Fix(y.a / 2) End If

Text1.Text=y.b End Sub

对以上程序,下列叙述中错误的是( )。 A) x是用户定义的类型

B) InputBox函数弹出的对话框中没有提示信息 C) 若输入的是偶数,y.b的值为该偶数的平方

D) Fix(y.a / 2)把y.a / 2的小数部分四舍五入,转换为整数返回 参考答案:D

【解析】x是用户定义的一种变量类型,可以使用它来声明变量。InputBox(\\函数的提示信息为\\,即为空,因此弹出的对话框中没有提示信息。在程序中通过比较输入的数被2整除和被2除的值是否相等来判定它是否为偶数,如果是那么y.b的值就是y.a的值的平方。Fix函数是取整函数,它会删除小数部分,直接取表达式的整数部分,不四舍五入,因此D选项错。

4.窗体上有一个名称为Picture1的图片框控件,一个名称为Label1的标签控件,如图所示。

现有如下程序:

Public Sub display(x As Control)

第 10 页 共 96 页

性为Caption的控件是( )。 A) 列表框(ListBox) B) 标签(Label) C) 文本框(TextBox) D) 组合框(ComboBox) 参考答案:B

【解析】标签主要用来显示文本信息,它所显示的内容只能用Caption属性来设置或修改,Caption为标签控件的默认属性,引用时可以只写标签控件的对象名。 .

5.窗体上有一个由两个文本框组成的控件数组,名称为Text1,并有如下事件过程:

Private Sub Text1_Change(Index As Integer) Select Case Index Case 0

Text1(1).FontSize=Text1(0).FontSize * 2 Text1(1).Text=Text1(0).Text Case 1

Text1(0).FontSize=Text1(1).FontSize / 2 Text1(0).Text=Text1(1).Text Case Else

MsgBox \执行Else分支\ End Select End Sub

关于上述程序,以下叙述中错误的是( )。 A) Index用于标识数组元素

B) 本程序中Case Else分支的语句永远不会被执行

C) 向任何一个文本框输入字符,都会在另一个文本框中显示该字符 D) 下标为0的文本框中显示的字符尺寸将越来越小 参考答案:D

【解析】控件数组的Index属性作为控件数组的下标,用于标识数组元素。题目中程序功能是当任一个文本框内容改变时设置第2个文本框的字号是第1个文本框字号的2倍,同时两个文本框显示相同文字。假如用户没有使用控件数组的Index属性的默认值程序将执行到Else分支。 6.为了使文本框同时具有垂直和水平滚动条,应先把MultiLine属性设置为True,然后再把ScrollBars属性设置为( )。 A) 0 B) 1 C) 2 D) 3

参考答案:D

7. 在窗体上画一个名称为Combo1的组合框,名称为Text1的文本框,以及名称为Command1的命令按钮,如

第 26 页 共 96 页

图所示。

运行程序,单击命令按钮,将文本框中被选中的文本添加到组合框中,若文本框中没有选中的文本,则将文本框中的文本全部添加到组合框中。命令按钮的事件过程如下:

Private Sub Command1_Click() If Text1.Se1Length<>0 Then Else

Combo1.AddItem Text1 End If End Sub

程序中横线处应该填写的是( )。 A) Combo1.AddItem Text1.Text B) Combo1.AddItem Text1.SelStart C) Combo1.AddItem Text1.SelText D) Combo1.AddItem Text1.SelLength 参考答案:C

【解析】根据题意可知,横线处应该是将文本框中选中文本添加到组合框中。文本框Text属性返回整个文本框中的文本,故A选项错误;SelStart属性返回选中文本的起始位置,故B选项错误;SelLength属性返回选中文本的长度,故D选项错误;SelText属性返回选中的文本,故C选项正确。

8. 窗体上有两个水平滚动条HV、HT,还有一个文本框Text1和一个标题为\计算\的命令按钮Command1,并编写

了以下程序:

Private Sub Command1_Click() Call calc(HV.Value,HT.Value) End Sub

Public Sub calc(x As Integer,y As Integer) Text1.Text=x*y End Sub

运行程序,单击\计算\按钮,可根据速度与时间计算出距离,并显示计算结果。 对以上程序,下列叙述中正确的是( )。 A) 过程调用语句不对,应为calc(HV, HT)

B) 过程定义语句的形式参数不对,应为Sub calc(x As Control, y As Control) C) 计算结果在文本框中显示出来 D) 程序不能正确运行 参考答案:C

【解析】访问滚动条控件的值,可以直接使用控件的名称,也可以在名称后面指明Value属性。滚动条位置是用数值来表示的,因此定义Calc过程时参数应该定义为Integer类型。程序中,Text1.Text=x*y语句说明计

第 27 页 共 96 页

算的结果在文本框中显示出来。

9. 在窗体上画一个文本框,其名称为Text1,为了在程序运行后隐藏该文本框,应使用的语句为( )。 A) Text1.Clear

B) Text1.Visible=False C) Text1.Hide

D) Text1.Enabled=False 参考答案:B

【解析】文本框没有Clear和Hide方法,故A、C选项错误;Enabled属性设置文本框可用不可用,属性值为True时可在文本框中输入数据,为False时文本框为灰色,内容不能修改,故D选项错误;Visible属性用来设置文本框显示或隐藏,当属性值为True时文本框显示,为False时文本框隐藏,故B选项正确。

10. 在窗体上画两个文本框,其名称分别为Text1和Text2,然后编写如下程序:

Private Sub Form_Load() Show

Text1.Text=\ Text2.Text=\ Text1.SetFocus End Sub

Private Sub Text1_Change()

Text2.Text=Mid(Text1.Text, 6) End Sub

程序运行后,如果在文本框Text1中输入ChinaBeijing,则在文本框Text2中显示的内容是( )。 A) ChinaBeijing B) China C) Beijing D) ChinaB

参考答案:C

【解析】程序运行后,在文本框Text1中输入字符后,触发它的Change事件,通过中部截取函数Mid把文本框Text1中的内容从第6个字符'B'开始截取后面的字符,得到\字符串,然后把截取的字符串在Text2中显示出来。故C选项正确。

11. 为了使文本框只具有垂直滚动条,应先把MultiLine属性设置为True,然后再把ScrollBars属性设置为( )。 A) 0 B) 1 C) 2 D) 3

参考答案:C

【解析】文本框的ScrollBars属性值:0表示无滚动条,1表示只有水平滚动条,2表示只有垂直滚动条,3表示水平和垂直滚动条都有。本题文本框只具有垂直滚动条,则ScrollBar属性值就设置为2,故C选项正确。 12. 为了使文本框显示滚动条,除要设置ScrollBars外,还必须设置的属性是( )。 A) AutoSize B) Alignment C) Multiline D) MaxLength 参考答案:C

【解析】为了使文本框显示滚动条,要将ScrollBars的值设置为非0的1、2或3,还要设置Multiline属性为

第 28 页 共 96 页

True。

13. 若要使文本框能够输入多行文本,应该设置的属性是( )。 A) MultiLine B) WordWrap C) ScrollBars D) AutoSize 参考答案:A

【解析】文本框控件的MultiLine属性如果设置为False,则在文本框中只能输入单行文本;当设置为True时,可以使用多行文本,即在文本框中输入或输出文本时可以换行,并在下一行接着输入或输出。

14. 设有如图所示窗体和以下程序:

Private Sub Command1_Click() Text1.Text=\End Sub

Private Sub Text1_LostFocus() If Text1.Text<>\ Text1.Text=\ Text1.SetFocus End If End Sub

程序运行时,在Text1文本框中输入\如图所示),然后单击Command1按钮,则产生的结果是( )。 A) 文本框中无内容,焦点在文本框中 B) 文本框中为\,焦点在文本框中 C) 文本框中为\,焦点在按钮上

D) 文本框中为\,焦点在按钮上 参考答案:A

【解析】题目程序的功能为,当单击命令按钮时,Text1失去焦点,激发Text1的LostFocus事件,在此事件中,程序判断文本框中字符串是否为\,如果是则退出事件过程,继续执行命令按钮的单击事件过程,文本框中显示\,如果不是则文本框内容置空,焦点返回到文本框中等待输入,不会执行命令按钮的单击事件过程。题目中输入了\,与\不符,因此文本框置空,焦点回到文本框中。 15. 窗体上有一个名称为Text1的文本框;一个名称为Timer1的计时器控件,其Interval属性值为5000,Enabled属性值是True。Timer1的事件过程如下:

Private Sub Timer1_Timer() Static flag As Integer If flag=0 Then flag=1 flag=-flag If flag=1 Then

Text1.ForeColor=&HFF& '&HFF&为红色 Else

第 29 页 共 96 页

Text1.ForeColor=&HC000& '&HC000&为绿色 End If End Sub

以下叙述中正确的是( )。

A) 每次执行此事件过程时,flag的初始值均为0 B) flag的值只可能取0或1

C) 程序执行后,文本框中的文字每5秒改变一次颜色 D) 程序有逻辑错误,Else分支总也不能被执行 参考答案:C

【解析】程序中flag被定义为Static变量,它的值只在第一次执行事件过程时为0,以后每次执行计时器事件过程它的值都会保留上次过程中运算后的值,之后它的值是1或-1。文本框控件的ForeColor属性表示文本框中文字的颜色,计时器控件的Interval属性为5000,即计时器间隔为5秒钟一次,每次调用就会交替改变文本框中文字的颜色。因此C选项正确。

16. 设窗体中有一个文本框Text1,若在程序中执行了 Text1.SetFocus,则触发( )。 A) Text1的SetFocus事件 B) Text1的GotFocus事件 C) Text1的LostFocus事件 D) 窗体的GotFocus事件 参考答案:B

【解析】SetFocus是控件获得焦点的方法,GotFocus是控件获得焦点后触发的事件,LostFocus是控件失去焦点后触发的事件。本题中程序执行Text1.SetFocus后,Text1就获得焦点,进而触发Text1的GotFocus事件。故B选项正确。

17. 以下能够触发文本框Change事件的操作是( )。 A) 文本框失去焦点 B) 文本框获得焦点 C) 设置文本框的焦点 D) 改变文本框的内容 参考答案:D

【解析】改变文本框中的内容时就会触发它的Change事件,故选D。 18. 当文本框中的内容发生改变时所触发的事件是( )。 A) KeyUp B) Change C) LostFocus D) GotFocus 参考答案:B

【解析】文本框中内容有变化时,触发Change事件。故B选项正确。

当在文本框中输入数据,松开键盘时触发它的KeyUp事件;文本框失去焦点触发LostFocus事件;获得焦点,触发GotFocus事件。

19. 向文本框中输入字符时,下面能够被触发的事件是( )。 A) GotFocus B) KeyPress C) Click D) MouseDown 参考答案:B

【解析】向文本框输入文本时,有按键的动作,所以会触发KeyPress事件。故选B。 20. 以下关于图片框控件的说法中,错误的是( )。

第 30 页 共 96 页

A) 可以通过Print方法在图片框中输出文本

B) 图片框控件中的图形可以在程序运行过程中被清除 C) 图片框控件中可以放置其他控件

D) 用Stretch属性可以自动调整图片框中图形的大小 参考答案:D 【解析】可以通过Print方法在图片框中输出文件,图片框中的图形可以在程序运行过程中通过载入空文件的方法清除,图片框控件可以作为父控件,即可以放置其他控件,Stretch属性用来自动调整图片框中图形内容的大小。

21. 确定图片框Picture1在窗体上位置的属性是( )。 A) Width和Height B) Left和Top C) Width和Top D) Height和Left 参考答案:B

【解析】确定图片框在窗体上位置的属性是Left和Top,它们使用的是相对坐标,以窗体为参考点。 22. 假定在图片框Picture1中装入了一个图片,在程序运行中,为了清除该图片(注意,清除图片,而不是删除图片框),应采用的正确方法是( )。 A) 单击图片框,然后按Del键

B) 执行语句 Picture1.Picture=LoadPicture(\C) 执行语句 Picture1.Picture=\D) 执行语句:Picture1.Cls 参考答案:B

【解析】A选项按Del键不能删除图片;C选项中Pictue属性值不能为空字符串,语法错误;D选项中Cls方法只能清除图片上显示的内容,不能清除图片。要将图片框中的图片清除,用B选项方法可以。故B选项正确。 23. 为了调整图像框的大小以与其中的图形相适应,必须把它的Stretch属性设置为( )。 A) True B) False C) 1 D) 2

参考答案:B 【解析】图像框的Strethc属性值为False时,将自动放大或缩小图像框中的图形以与图像框的大小相适应。 24. 要使图像框(Image)中的图像能随着图像框的大小伸缩,应该设置的属性及值是( )。 A) AutoSize值为True B) AutoRedraw值为True C) Stretch值为True D) BorderStyle值为0 参考答案:C

【解析】图像框控件的Stretch属性用来调整图像框中图形内容的大小。它既可以通过属性窗口设置,也可通过程序设置。该属性的取值为True或Flase。当其属性值为False时,将自动放大或缩小图像框中的图形以与图像框的大小相适应。

25. 窗体上有一个如右图所示的图形控件,控件中显示了如图所示的文字,可以判断这个图形控件( )。

第 31 页 共 96 页

A) 是图像框(Image)

B) 是图片框(PictureBox) C) 是形状控件

D) 不是上述3种控件中的一种 参考答案:B

【解析】图片框是\容器\控件,可以作为父控件,而图像框不能。图片框可以通过Print方法接收文本,并可接收由像素组成的图形,而图像框不能接收Print方法输入的信息,也不能用绘图方法在图像框上绘制图形。而形状控件3D效果的样式,根据题目图示显然不是形状控件。因此这个图形控件是图片框。

26. 已知图片框Picture1中已装入一个图形,为了在不删除图片框的前提下,清除该图形,应采取的正确操作是( )。

A) 在设计阶段选择图片框Picture1,并按Delete键

B) 在运行期间执行语句Picture1.Picture=LoadPicture(\C) 在运行期间执行语句Picture1.Picture=\

D) 在设计阶段先选中图片框Picture1,再在属性窗口中选择Picture属性,最后按Enter键 参考答案:B

【解析】如果图片框已装入了一个图形,在不删除图片框的前提下要想清除该图形有两种方法。一是在设计阶段在图片框的属性窗口中删除图片框控件Picture属性行后边的\,另一种方法是在程序运行阶段使用LoadPicture(\装一个空文件,这样也能清除图形。

27. 使用Line控件在窗体上画一条从(0,0)到(600,700)的直线,则其相应属性的值应是( )。 A) X1=0, X2=600, Y1=0, Y2=700 B) Y1=0, Y2=600, X1=0, X2=700 C) X1=0, X2=0, Y1=600, Y2=700 D) Y1=0, Y2=0, X1=600, X2=700 参考答案:A

【解析】X1、Y1、X2、Y2属性是直线的起点、终点坐标。故选A。

28. 设窗体上有2个直线控件Line1和Line2,若使两条直线相连接,需满足的条件是( )。 A) Line1.X1=Line2.X2 且 Line1.Y1=Line2.Y2 B) Line1.X1=Line2.Y1 且 Line1.Y1=Line2.X1 C) Line1.X2=Line2.X1 且 Line1.Y1=Line2.Y2 D) Line1.X2=Line2.X1 且 Line1.Y2=Line2.Y2 参考答案:A

【解析】直线控件的X1、Y1和X2、Y2属性分别表示直线两个端点的坐标,即(X1,Y1)和(X2,Y2)。如果要使两条直线相连,显然这两条直线的某一端点的坐标相同才行。因此本题需要Line1.X1=Line2.X1且Line1.Y1=Line2.Y1,或Line1.X1=Line2.X2且Line1.Y1=Line2.Y2,或Line1.X2=Line2.X1且Line1.Y2=Line2.Y1,或Line1.X2=Line2.X2且Line1.Y2=Line2.Y2。因此A选项正确。

29. 窗体上有一个名称为Timer1的计时器控件,一个名称为Shape1的形状控件,其Shape属性值为3(Circle)。编写程序如下:

Private Sub Form_Load() Shape1.Top=0

Timer1.Interval=100 End Sub

Private Sub Timer1_Timer() Static x As Integer

Shape1.Top=Shape1.Top+100 x=x+1

If x Mod 10=0 Then

第 32 页 共 96 页

Shape1.Top=0 End If End Sub

以下关于上述程序的叙述中,错误的是( )。

A) 每执行一次Timer1_Timer事件过程,x的值都在原有基础上增加1 B) Shape1每移动10次回到起点,重新开始 C) 窗体上的Shape1由下而上移动 D) Shape1每次移动100 参考答案:C

【解析】题目中变量x定义为Static,即每次进入Timer事件过程时,x都会保留上次的值,从而实现每执行一次Timer1_Timer事件过程x的值都在原有基础上增加1。程序中判断调用Timer事件过程10次后,重置Shape1的top值为0,即回到起点。控件Shape1的Top属性是距离窗体顶的位置,数值越大距离越远,因此Shape1会由上向下移动。

30. 窗体的左右两端各有1条直线,名称分别为Line1、Line2;名称为Shape1的圆靠在左边的Line1直线上(见图);另有1个名称为Timer1的计时器控件,其Enabled属性值是True。要求程序运行后,圆每秒向右移动100,当圆遇

到Line2时则停止移动。

为实现上述功能,某人把计时器的Interval属性设置为1000,并编写了如下程序:

Private Sub Timer1_Timer()

For k=Line1.X1 To Line2.X1 Step 100

If Shape1.Left+Shape1.Width

运行程序时发现圆立即移动到了右边的直线处,与题目要求的移动方式不符。为得到与题目要求相符的结果,下面修改方案中正确的是( )。 A) 把计时器的Interval属性设置为1

B) 把For k=Line1.X1 To Line2.X1 Step 100 和 Next k两行删除

C) 把For k=Line1.X1 To Line2.X1 Step 100 改为 For k=Line2.X1 To Line1.X1 Step 100 D) 把If Shape1.Left+Shape1.Width

【解析】在计时器事件中不应再设置步长为100的For循环,应该把For循环去掉,只留下循环体的语句,计时器每秒激发一次,每次判断小球是否移到Line2处,不到就改变自己的Left值即继续移动。因此B正确。 31. 若已把一个命令按钮的Default属性设置为True,则下面可导致按钮的Click事件过程被调用的操作是( )。

A) 用鼠标右键单击此按钮 B) 按键盘上的Esc键 C) 按键盘上的回车键

D) 用鼠标右键双击此按钮

第 33 页 共 96 页

参考答案:C

【解析】当命令按钮的Default属性值为True时,程序运行,按回车键和单击该命令按钮一样都会触发按钮的Click事件;当命令按钮的Cancel属性值为True时,程序运行,按Esc键和单击该命令按钮都会触发按钮的Click事件。故选C。

32. 若要把窗体上命令按钮Command1的状态设置为不可用,应该执行的命令是( )。 A) Command1.Enabled=False B) Command1.Visible=False C) Command1.Cancel=False D) Command1.Default=False 参考答案:A

【解析】命令按钮的Enabled属性是设置可用不可用,故A选项正确。 Visible属性是设置可见不可见;

Cancel属性值为True时,表示按Esc键和单击该命令按钮一样都会触发该命令按钮的单击事件,反之,Esc键不起作用;

Default属性值为True时,表示按回车键和单击该命令按钮一样都会触发该命令按钮的单击事件,反之,回车键不起作用。

33. 如果把命令按钮的Cancel属性设置为True,则程序运行后( )。 A) 按Esc键与单击该命令按钮的作用相同 B) 按回车键与单击该命令按钮的作用相同 C) 按Esc键将停止程序的运行 D) 按回车键将中断程序的运行 参考答案:A

【解析】当一个命令按钮的Cancel属性被设置为True时,按Esc键与单击该命令按钮的作用相同。在一个窗体中,只能有一个命令按钮的Cancel属性被设置为True。

34. 为了使命令按钮的Picture、DownPicture或DisabledPicture属性生效,必须把它的Style属性设置为( )。 A) 0 B) 1 C) True D) False

参考答案:B 【解析】为了使命令按钮的Picture、DownPicture或DisablePicture属性生效,必须把Style属性设置为1(图形格式),否则设置的图片无效。 35. 下列说法中,错误的是( )。

A) 将焦点移至命令按钮上,按Enter键,则引发命令按钮的Click事件 B) 单击命令按钮,将引发命令按钮的Click事件 C) 命令按钮没有Picture属性 D) 命令按钮不支持DblClick事件 参考答案:C

【解析】按钮的Picture属性可以给命令按钮指定一个图形,为了使用这个属性,必须把Style属性设置为1。单击命令按钮或将焦点移至命令按钮上,按Enter键,都会引发命令按钮的Click事件。命令按钮不支持DblClick事件。

36. 以下关于命令按钮的叙述中正确的是( )。 A) 命令按钮上可以显示图片

B) 命令按钮能够分别响应单击、双击事件 C) 程序运行时,不能改变命令按钮上的文字

第 34 页 共 96 页

D) 若命令按钮的Cancel属性设为True,焦点在其他控件上时,按下回车键与单击该按钮的效果相同 参考答案:A

【解析】按钮控件的Picture属性可以给命令按钮指定一个图形。按钮的标题由属性Caption设置,可以在程序中动态指定。当一个命令按钮的Cancel属性被设置为True时,按ESC键与单击该命令按钮的作用相同。命令按钮能够响应单击事件,但不能响应双击事件。

37. 在窗体上画两个单选按钮,名称分别为Option1、Option2,标题分别为\宋体\和\黑体\;1个复选框(名称为Check1,标题为\粗体\和1个文本框(名称为Text1,Text属性为\改变文字字体\,窗体外观如图所示。程序运行后,要求\宋体\单选按钮和\粗体\复选框被选中,则以下能够实现上述操作的语句序列是( )。

A) Option1.Value=False Check1.Value=True

B) Option1.Value=True Check1.Value=0

C) Option2.Value=False Check1.Value=2

D) Option1.Value=True Check1.Value=1 参考答案:D

【解析】单选按钮控件的Value属性值为True表示被选中,False表示未被选中;复选框控件的Value属性值为0表示未选中,1表示选中,2表示禁止。本题中是单选按钮和复选框都被选中,故D选项正确。 38. 设窗体上有名称为Option1的单选按钮,且程序中有语句:

If Option1.Value=True Then

下面语句中与该语句不等价的是( )。 A) If Option1.Value Then B) If Option1=True Then C) If Value=True Then D) If Option1 Then 参考答案:C

【解析】A选项中Option1.Value可作为一个条件表达式,它返回的是单选按钮Value属性的属性值,根据属性值就可判断出单选按钮是否被选中;B选项中Option1等价于Option1.Value;D选项与A选项等价,故A、B、D选项均与程序中语句等价;C选项中Value是属性名,前面必须加控件名才能用,不能单独使用,故C选项错误。 39. 在名称为Frame1的框架中,有两个名称分别为op1、op2的单选按钮,标题分别为\单程\、\往返\,如图所

第 35 页 共 96 页

示。

以下叙述中,正确的是( )。

A) 若仅把Frame1的Enabled属性设为False,则 op1、op2仍可用 B) 对于上图,op1.Value的值为True

C) 对于上图,执行 Op1.Value=False命令,则\往返\单选按钮被选中 D) 对于上图,执行 Op1.Value=0命令,程序出错 参考答案:B

【解析】当Frame1的Enabled属性设为False后,框架Frame1变为不可用,它里面放的两个单项按钮也就变为不可用,故A选项错误;

当Op1.Value为False时,\单程\和\往返\单项按钮都处于未选中状态,故C选项错误; Op1.Value的值为0,即为False,语句正确,没有程序错误,故D选项说法错误; 根据图可只,\单程\单选按钮处于选中状态,Op1.Value的值为True,故B选项正确。

40. 以下不属于单选按钮的属性是( )。 A) Caption B) Name C) Min D) Enabled 参考答案:C

【解析】单选按钮没有Min属性,滚动条控件的属性中有Min属性。

41. 为了使一个复选框被禁用(灰色显示),应把它的Value属性设置为( )。 A) 0 B) 1 C) 2 D) False

参考答案:C

【解析】复选框的Value属性可以设置为0、1或2。0表示没有选择该复选框,1表示选中该复选框,2表示该复选框被禁用(灰色显示)。

42. 以下关于单选按钮和复选框的叙述中,正确的是( )。 A) 单选按钮和复选框都能从多个选项中选择一项

B) 单选按钮和复选框被选中时,选中控件的Value属性值为True C) 是否使用框架控件将单选按钮分组,对选项没有影响 D) 是否使用框架控件将复选框分组,对选项没有影响 参考答案:D

【解析】复选框按钮可以同时选择多个,而在一组单选按钮中,只能选择其中的一个。单选按钮被选中时,其Value属性值为True,如果没有被选中其Value值为False,复选框的Value属性可以设置为0、1和2,分别代表没选中、选中和禁用。单选按钮一般用框架进行分组,每个框架内的单选按钮的操作不影响其他组的按钮,而复选框是否分组对选项没有影响。

43. 下面控件中,没有Caption属性的是( )。

第 36 页 共 96 页

A) 复选框 B) 单选按钮 C) 组合框 D) 框架

参考答案:C

【解析】Caption属性是设置或返回控件的标题。组合框没有Caption属性。故选C。

44. 窗体上有名称为Command1的命令按钮,名称分别为List1、List2的列表框,其中List1的MultiSelect属性设置为1(Simple),并有如下事件过程:

Private Sub Command1_Click()

For i=0 To List1.ListCount-1

If List1.Selected(i)=True Then List2.AddItem Text End If Next End Sub

上述事件过程的功能是将List1中被选中的列表项添加到List2中。运行程序时,发现不能达到预期目的,应做修改,下列修改中正确的是( )。

A) 将For循环的终值改为List1.ListCount

B) 将List1.Selected(i)=True 改为List1.List(i).Selected=True C) 将List2.AddItem Text 改为List2.AddItem List1.List(i) D) 将List2.AddItem Text 改为List2.AddItem List1.ListIndex 参考答案:C

【解析】题目程序不能将List1中的选中项添加到List2中,List2.AddItem Text一行有误,应该改为List2.AddItem List1.List(i)才能使List1中每个选中的行添加到List2中。列表框控件的List属性保存了列表框中所有值的数组,可以通过下标访问数组中的值。

45. 设窗体上有一个列表框控件List1,含有若干列表项。以下能表示当前被选中的列表项内容的是( )。 A) List1.List

B) List1.ListIndex C) List1.Text D) List1.Index 参考答案:C

【解析】List1的List属性是设置或返回列表框中的列表项内容;ListIndex属性设置或返回当前选中的列表项的索引值;Index属性是用来区分列表框控件数组中各List控件;Text属性设置或返回当前所选中列表项的文本内容。故选C。

46. 要想使列表框只允许单选列表项,应设置的属性为( )。 A) Style B) Selected C) MultiSelect D) Enabled 参考答案:C

【解析】列表框的Style属性是设置列表框的外形;

Selected属性在程序运行中设置或返回列表项的选中状态; Enabled属性设置列表框可用不可用;

MultSelect用来设置选择列表项的方式。0为默认,只允许单选列表项;1为复选,可同时选中一个或多个列表项,但要一个一个选中;2也为复选,可一个一个选中列表项,也可连续选中。故选C。

47. 在窗体上画一个组合框,一个命令按钮和一个文本框,其名称分别为Combo1,Command1和Text1,然后编写

第 37 页 共 96 页

如下事件过程:

Private Sub Form_Load() Combo1.AddItem \ Combo1.AddItem \ Combo1.AddItem \ Combo1.AddItem \ Combo1.AddItem \End Sub 程序运行后,如果单击命令按钮,则在文本框中显示组合框的项目\。为了实现该操作,在命令按钮的Click事件过程中应使用的语句为( )。 A) Text1.Text=Combo1.List(2) B) Text1.Text=Combo1.Text C) Text1.Text=Combo1.List(3) D) Text1.Text=Combo1.ListIndex 参考答案:A

【解析】List属性可以返回组合框中各选项的内容。用下标区分各选项,第1个选项下标为0,依次类推。\为组合框中第3个选项,可以用Combo1.List(2)返回选项内容。故A选项正确,C选项错误。

Text属性返回的是组合框中选中项目的内容;ListIndex属性返回的是选中项目的索引值,即下标。故B、D选项错误。

48. 对于列表框控件List1,能够表示当前被选中列表项内容的是( )。 A) List1.Text B) List1.Index C) List1.ListIndex D) List1.List 参考答案:A

【解析】Text属性可返回当前被选中列表项的内容,故选A。

Index属性是当有列表框控件数组时,区分各列表框用的;ListIndex属性返回的是被选中的列表项的索引值;List属性设置或返回各列表项的内容。

49. 要删除列表框中最后一个列表项,正确的语句是( )。 A) List1.RemoveItem ListCount

B) List1.RemoveItem List1.ListCount C) List1.RemoveItem ListCount-1

D) List1.RemoveItem List1.ListCount-1 参考答案:D

【解析】ListCount属性返回列表框中列表项的个数,列表项的索引号从0开始,所以要删除最后一个列表项,ReMoveItem方法中的索引号就应该是List1.ListCount-1,故D选项正确。

50. )窗体如图1所示。要求程序运行时,在文本框Text1中输入一个姓氏,单击\删除\按钮(名称为Command1),则可删除列表框List1中所有该姓氏的项目。若编写以下程序来实现此功能:Private Sub Command1_Click()

Dim n%,k%

n=Len(Text1.Text)

For k=0 To Listl.ListCount-1

If Left(List1.List(k),n)=Text1.Text Then List1.RemoveItem k End If Next k

第 38 页 共 96 页

End Sub

在调试时发现,如输入\陈\,可以正确删除所有姓\陈\的项目,但输入\刘\,则只删除了\刘邦\、\刘备\项,结果如图2所示。这说明程序不能适应所有情况,需要修改。正确的修改方案是把For k=0 To List1.ListCount-1改为( )。

A) For k=List1.ListCount-1 To 0 Step-1 B) For k=0 To List1.ListCount C) For k=1 To List1.ListCount-1 D) For k=1 To List1.ListCount 参考答案:A

【解析】错误原因:每一次删除列表框满足项,列表框的项目数目就会相应地减少,所以就出现了漏删内容,如果把循环变量k改成从List1.ListCout-1到0,从最后一个项目往第一个项目查找,满足条件就删除该项目,从而不会出现遗漏现象,所以正确答案为A。

51. 列表框中被选中的数据项的位置可以通过一个属性获得,这个属性是( )。 A) List

B) ListIndex C) Text

D) ListCount 参考答案:B

【解析】列表框控件的ListIndex属性值是已选中的表项的位置。表项位置由索引值指定,第一项的索引值为0,第二项为1,以此类推。如果没有任何项被选中,ListIndex的值将设置为-1。 52. 窗体上有一个列表框控件List1。以下叙述中错误的是( )。 A) List1中有ListCount-1个列表项

B) 当List1.Selected(i)=True,表明第i项被选中 C) 设置某些属性,可以使列表框显示多列数据

D) List1.Text的值是最后一次被选中的列表项文本 参考答案:A

【解析】列表框控件的列表项个数即为ListCount属性值。如果列表项的某项被选中,则该项的Selected属性值为True。列表框控件的Columns属性用来确定列表框的列数。Text属性的值为最后一次选中的表项的文本,不能直接修改Text属性。

53. 下面列表框属性中,是数组的是( )。 A) ListCount B) Selected C) ListIndex D) MultiSelect 参考答案:B

【解析】在列表框控件中,Selected属性是一个数组,各个元素的值为True或False,每个元素与列表框中

第 39 页 共 96 页

的一项相对应,当元素值为True时表明选择了该项,如为False表示未选择。ListCount属性值是一个数组,它列出列表框中表项的数量;ListIndex属性值表示已选中的表项的位置,表项位置由索引值指定,第一项索引值为0,第二项为1,以此类推;MultiSelect属性用来设置一次可以选择的表项是一项、多项、指定范围。 54. 窗体上有一个名为List1的列表框和一个名为Command1的命令按钮,并有下面的事件过程:

Private Sub Command1_Click() n%=List1.ListIndex If n>0 Then

ch$=List1.List(n)

List1.List(n)=List1.List(n-1) List1.List(n-1)=ch End If End Sub

程序运行时,选中1个列表项,然后单击Command1按钮,则产生的结果是( )。 A) 若选中的不是最前面的列表项,则选中的列表项与它前一个列表项互换位置 B) 选中的列表项与它前面的列表项互换位置

C) 若选中的不是最后面的列表项,则选中的列表项与它后一个列表项互换位置 D) 选中的列表项与它后面的列表项互换位置 参考答案:A

【解析】当单击Command1按钮后,List1列表框中被选中项的索引值赋给变量n,如果被选中项不是空也不是第1项时,将选中项的项目文字赋值给变量ch,用选中项的上面一项的文字替换选中项的文字,再把变量ch中的文字替换选中项上面一项的文字,简单说就是选中项和它上面一项的文字交换。因此A选项的说法正确。

第5章 控制结构与数组

1. 设工程中有2个窗体:Form1、Form2,Form1为启动窗体。Form2中有菜单,其结构如表。要求在程序运行时,在Form1的文本框Text1中输入口令并按回车键(回车键的ASCII码为13)后,隐藏Form1,显示Form2。若口令为\,所有菜单都可见;否则看不到\成绩录入\菜单项。为此,某人在Form1窗体文件中编写如下程序:

Private Sub Text11_KeyPress(KeyAscii As Integer) If KeyAscii=13 Then

If Text1.Text=\ Form2.input.Visible=True Else

Form2.input.Visible=False End If End If Form1.Hide

第 40 页 共 96 页

本文来源:https://www.bwwdw.com/article/0me7.html

Top