第五章程序设计与软件工程基础 实验十一VB6.0的基本操作 学号: 姓名: 成绩 学院(系): 专业: 班级 实验要求 1.上机实验前必须认真阅读整个实验内容,并认真学习配套教材上的相关知识。 2.上机实验后,请完成实验步骤部分的填空 3.完成回答问题部分的所有问题 4.上机完成修改程序部分的操作。 5.将完成后的整个实验内容作为实验报告,并从裁剪线处剪下交给任课教师。 二、实验目的 1.熟悉 Visual basic6.0的集成开发环境。 2.掌握用ⅵ i sual basic6.0编程的一般步骤。 剪 3.学会使用窗体对象,以及在窗体上设计应用程序界面。 4.掌握 CommandBut ton、 PictureBox、 TextBox等控件的建立及使用方法。 5.学会设置窗体和其他控件的属性 6.掌握 Click事件的使用方法,理解事件驱动过程。 实验内容 创建一个工程,该工程包含窗体 FormPicture和 FormText。窗体 FormPicture用于显 1示和清除图片,窗体 Formtext用于显示和清除文本。具体要求如下: 1.在窗体 FormPicture上,用程序实现图片的显示与清除。窗体上有四个控件:图 片框 Picture用于显示图片;命令按钮 Command1用于驱动 Commandl Click0事件,完成 显示图片的任务;命令按钮 Command2用于驱动 Command2 Click事件,完成清除图片的 任务:命令按钮 Command3用于驱动 Command3 Click事件,完成转向窗体 FormText的任 务 2.在窗体 Formtext上,用程序实现文本的显示与清除。窗体上有四个控件:文本框 Text1用于显示文本内容;命令按钮 Command1用于驱动 Command1_ Click0事件,完成显示 文本的任务;命令按钮 Command2用于驱动 Command2 Click0事件,完成清除文本的任务; 命令按钮 Command3用于驱动 Command3 Click事件,完成转向窗体 FormPicture的任务 四、实验步骤
1 第五章 程序设计与软件工程基础 实验十一 VB 6.0 的基本操作 学 号: 姓名: 成绩: 学院(系): 专业: 班级: 一、实验要求 1.上机实验前必须认真阅读整个实验内容,并认真学习配套教材上的相关知识。 2.上机实验后,请完成实验步骤部分的填空。 3.完成回答问题部分的所有问题。 4.上机完成修改程序部分的操作。 5.将完成后的整个实验内容作为实验报告,并从裁剪线处剪下交给任课教师。 二、实验目的 1.熟悉 Visual Basic 6.0 的集成开发环境。 2.掌握用 Visual Basic 6.0 编程的一般步骤。 3.学会使用窗体对象,以及在窗体上设计应用程序界面。 4.掌握 CommandButton、PictureBox、TextBox 等控件的建立及使用方法。 5.学会设置窗体和其他控件的属性。 6.掌握 Click事件的使用方法,理解事件驱动过程。 三、实验内容 创建一个工程,该工程包含窗体FormPicture和 FormText。窗体 FormPicture用于显 示和清除图片,窗体FormText用于显示和清除文本。具体要求如下: 1.在窗体 FormPicture 上,用程序实现图片的显示与清除。窗体上有四个控件:图 片框 Picture1用于显示图片;命令按钮 Command1用于驱动 Command1_Click()事件,完成 显示图片的任务;命令按钮 Command2 用于驱动 Command2_Click()事件,完成清除图片的 任务;命令按钮Command3用于驱动 Command3_Click()事件,完成转向窗体FormText的任 务。 2.在窗体FormText上,用程序实现文本的显示与清除。窗体上有四个控件:文本框 Text1用于显示文本内容;命令按钮Command1用于驱动 Command1_Click()事件,完成显示 文本的任务;命令按钮Command2用于驱动 Command2_Click()事件,完成清除文本的任务; 命令按钮 Command3用于驱动Command3_Click()事件,完成转向窗体FormPicture的任务。 四、实验步骤 裁 剪 线
1.执行“文件”菜单中的“新建工程”命令创建一个新工程,同时系统自动为新工 程创建一个名字为Form1的窗体。 2.执行“工程”菜单中的“添加窗体”命令再新建一个名字为Form2的窗体。 3.双击工程资源管理器窗口中的Form1窗体使窗体Form1被选中,在属性窗口中将 Form1的№ame(名称)属性设置为 FormPicture 4.在窗体 FormPicture上,用工具箱上的图片框 PictureBox创建控件 Picture1,用 命令按钮 CommandBut ton创建对象 Commandl、 Command2和 Command3。窗体界面如图5-1 转文本口 图5-1 5.选中窗体 FormPicture上的每一个控件,在属性窗口中依次为他们设置表5-1所 示的属性值。 表51 FormPicture上控件的属性设置 控件名称 属性 属性值 控件名称 属性 属性值 FormPicture Capti 显示或清除图片 Command2 Caption 清除图片 Picture Autosize True 显示图片 Caption 转文本窗口 宋体5号 Command3 宋体5号 6.双击窗体 FormPicture上的命令按钮 Command1进入代码编辑窗口,然后输入以下 程序。 Rem Commandl Click o事件完成显示图片任务 Private Sub Commandl Click Picturel. Picture= LoadPicture("D: \1j\tp bmp") 用 LoadPictureO在图片框中装入图形,装入的图形可自己设置 End sub Rem command2 Click0事件完成清除图片任务 Private Sub Command2 Click O Picturel. Picture= LoadPicture o 装入一个空图形时可删除图片框中原来的图形 End sub Rem command3 Click0事件完成转换窗口任务 Private Sub Command3 Click FormPicture.Hide’隐藏窗体 FormIc ture
2 1.执行“文件”菜单中的“新建工程”命令创建一个新工程,同时系统自动为新工 程创建一个名字为Form1 的窗体。 2.执行“工程”菜单中的“添加窗体”命令再新建一个名字为 Form2的窗体。 3.双击工程资源管理器窗口中的 Form1 窗体使窗体 Form1 被选中,在属性窗口中将 Form1 的 Name(名称)属性设置为FormPicture。 4.在窗体FormPicture上,用工具箱上的图片框 PictureBox创建控件Picture1,用 命令按钮 CommandButton 创建对象 Command1、Command2 和 Command3。窗体界面如图 5-1 所示。 图 5-1 5.选中窗体 FormPicture 上的每一个控件,在属性窗口中依次为他们设置表 5-1 所 示的属性值。 表 5-1 FormPicture上控件的属性设置 控件名称 属性 属性值 控件名称 属性 属性值 FormPicture Caption 显示或清除图片 Command2 Caption 清除图片 Picture1 AutoSize True Font 宋体 5 号 Command1 Caption 显示图片 Command3 Caption 转文本窗口 Font 宋体 5 号 Font 宋体 5 号 6.双击窗体 FormPicture 上的命令按钮 Command1 进入代码编辑窗口,然后输入以下 程序。 Rem Command1_Click()事件完成显示图片任务 Private Sub Command1_Click() Picture1.Picture = LoadPicture("D:\lj\tp.bmp") '用 LoadPicture()在图片框中装入图形,装入的图形可自己设置 End Sub Rem Command2_Click()事件完成清除图片任务 Private Sub Command2_Click() Picture1.Picture = LoadPicture() '装入一个空图形时可删除图片框中原来的图形 End Sub Rem Command3_Click()事件完成转换窗口任务 Private Sub Command3_Click() FormPicture.Hide '隐藏窗体FormPicture
FormText Show 显示窗体 Formtext End sub 说明:图片框 PictureBox控件的主要作用是为用户显示图片,也可以作为其他控件 的容器。可显示的图片格式有.bmp、.ico、,jpg、,gif等。图片框的 Autosize属性设置 为True时,图片框能自动调整大小与显示的图片匹配:设置为 False时,图片框不能自动 调整大小来适应其中的图片。 7.双击工程资源管理器窗口中的Fom2窗体使窗体Form2被选中,在属性窗口中将 Form2的№ame(名称)属性设置为 FormText 8.在窗体 mteXt上,用工具箱上的文本框 Text Box创建控件Text1,用命令按钮 CommandBut ton创建对象 Command、 Comman和 Command3。窗体界面如图52所示。 回 显示文本 济除文本 图5-2 9.选中窗体 Formtext上的每一个控件,参照表5-1和图5-2,在属性窗口中依次为 他们设置属性值,最后填上表5-2中的空。 表5-2For皿ext上控件的属性设置 剪 控件名称 属性 属性值 控件名称 属性 属性值 Commandl 宋体小5号加粗 TextI borderStyle Forecolor 宋体小5号加粗 隶书三号 Caption返图片窗口 10.双击窗体 FormText上的命令按钮 Commandl进入代码编辑窗口,然后输入以下程 Rem commandl click0事件完成显示文本任务 Private Sub Commandl Click O Text1.Text="欢迎使用 Visual bas 设置Text的值 End sub Rem command2 Click0事件完成清除文本任务 Private Sub Command2 Click O Text1. Text 清除Text的值 End sub Rem command3 Click0事件完成转换窗口任务
3 FormText.Show '显示窗体FormText End Sub 说明:图片框 PictureBox 控件的主要作用是为用户显示图片,也可以作为其他控件 的容器。可显示的图片格式有.bmp、.ico、.jpg、.gif 等。图片框的 AutoSize 属性设置 为 True时,图片框能自动调整大小与显示的图片匹配;设置为 False时,图片框不能自动 调整大小来适应其中的图片。 7.双击工程资源管理器窗口中的 Form2 窗体使窗体 Form2 被选中,在属性窗口中将 Form2 的 Name(名称)属性设置为FormText。 8.在窗体 FormText 上,用工具箱上的文本框 TextBox 创建控件 Text1,用命令按钮 CommandButton 创建对象Command1、Command2 和Command3。窗体界面如图 5-2所示。 图 5-2 9.选中窗体 FormText 上的每一个控件,参照表 5-1 和图 5-2,在属性窗口中依次为 他们设置属性值,最后填上表5-2 中的空。 表 5-2 FormText 上控件的属性设置 控件名称 属性 属性值 控件名称 属性 属性值 FormText Caption Command1 Caption Text1 Caption Font 宋体小 5号加粗 BorderStyle 1 Command2 Caption ForeColor 蓝色 Font 宋体小 5号加粗 Font 隶书三号 Command3 Caption 返图片窗口 Font 10.双击窗体 FormText 上的命令按钮 Command1 进入代码编辑窗口,然后输入以下程 序。 Rem Command1_Click()事件完成显示文本任务 Private Sub Command1_Click() Text1.Text = "欢迎使用Visual Basic" '设置 Text 的值 End Sub Rem Command2_Click()事件完成清除文本任务 Private Sub Command2_Click() Text1.Text = "" '清除 Text 的值 End Sub Rem Command3_Click()事件完成转换窗口任务 裁 剪 线
Private Sub Command3 Click O Formtext Hide 隐藏窗体 Formtext Formpicture. Show 显示窗体 FormPicture End sub 11.执行“运行”菜单中的“启动”命令运行程序,屏幕上显示 FormPicture窗体的 界面,单击命令按钮“显示图片”可驱动 Commandl click0事件,在图片框中显示图片 如图5-3(a所示;单击命令按钮“清除图片”可驱动 Command2 click0事件,清除图片框 中的图片:单击命令按钮“转文本窗口”可驱动 Command3 click0事件,屏幕上显示 FormText窗体的界面 12.在 FormText窗体的界面上,单击命令按钮“显示文本”可在文本框中显示文本, 如图5-3(b)所示;单击命令按钮“清除文本”可清除文本框中的文本:单击命令按钮“返 图片窗口”可在屏幕上显示 FormPicture窗体的界面。 区 显示或清除文本 欢迎使用 Visual basic 活涂图片 示文本 清粽文本 图片窗 图5-3 13.当运行程序能完成设计要求时,执行“运行”菜单中的“结束”命令或单击窗体 界面上的关闭按钮可以结束当前程序的运行。 14.执行“文件”菜单中的“工程另存为”命令来保存工程,文件名为sy61.vbp 15.双击工程资源管理器窗口中的 FormPicture窗体使窗体 FormPicture被选中,执 行“文件”菜单中的“ FormPicture另存为”命令来保存窗体,窗体文件名为sy61_1.frm 双击工程资源管理器窗口中的 Formtext窗体使窗体 FormText被选中,执行“文件”菜单 中的“ FormText另存为”命令来保存窗体,窗体文件名为sy612.fm。 五、回答问题 1.运行程序时,命令按钮的执行顺序必须为显示图片、清除图片、转文本窗口吗 请用事件驱动的程序设计思想来简答本题。 2.执行“工程”菜单中的“工程属性”命令打开“工程属性”对话框,在对话框的
4 Private Sub Command3_Click() Formtext.Hide '隐藏窗体FormText Formpicture.Show '显示窗体FormPicture End Sub 11.执行“运行”菜单中的“启动”命令运行程序,屏幕上显示FormPicture窗体的 界面,单击命令按钮“显示图片”可驱动 Command1_Click()事件,在图片框中显示图片, 如图 5-3(a)所示;单击命令按钮“清除图片”可驱动 Command2_Click()事件,清除图片框 中的图片;单击命令按钮“转文本窗口”可驱动 Command3_Click()事件,屏幕上显示 FormText 窗体的界面。 12.在 FormText窗体的界面上,单击命令按钮“显示文本”可在文本框中显示文本, 如图 5-3(b)所示;单击命令按钮“清除文本”可清除文本框中的文本;单击命令按钮“返 图片窗口”可在屏幕上显示FormPicture 窗体的界面。 (a) (b) 图 5-3 13.当运行程序能完成设计要求时,执行“运行”菜单中的“结束”命令或单击窗体 界面上的关闭按钮可以结束当前程序的运行。 14.执行“文件”菜单中的“工程另存为”命令来保存工程,文件名为sy6_1.vbp。 15.双击工程资源管理器窗口中的FormPicture窗体使窗体FormPicture被选中,执 行“文件”菜单中的“FormPicture另存为”命令来保存窗体,窗体文件名为sy6_1_1.frm; 双击工程资源管理器窗口中的 FormText窗体使窗体FormText被选中,执行“文件”菜单 中的“FormText 另存为”命令来保存窗体,窗体文件名为sy6_1_2.frm。 五、回答问题 1.运行程序时,命令按钮的执行顺序必须为显示图片、清除图片、转文本窗口吗? 请用事件驱动的程序设计思想来简答本题。 答: 2.执行“工程”菜单中的“工程属性”命令打开“工程属性”对话框,在对话框的
“启动对象”的下拉列表框中选择“ FormText”,即设置启动对象为 FormText。请问重新 设置启动对象后,再运行程序时首先显示的窗体是哪一个? 3.文本框中显示的文本是什么颜色?请写出在属性窗口中将文本颜色改成红色的操 作过程以及在程序中设置文本颜色为红色的语句行。 答 线六、修改程序 1.将 FormPicture窗体中命令按钮“显示图片”的单击事件修改如下: Private Sub Commandl Click O tp$= InputBox$("请输入图片所在的位置和名字!","输入图片名","d:Ⅵjtp.bmp" Picturel. Picture= LoadPicture(tp) End sub 2.运行程序,在 FormPicture窗体界面上单击命令按钮“显示图片”,打开“输入图 片名”的输入对话框,如图5-4所示。在对话框中输入要显示的图片的位置和文件名,然 后单击“确定”按钮或按下回车键,相应的图片就显示在图片框中。 输入图片名 请输入图片所在的位置和名字! d: \j\tp bap 图5-4
5 “启动对象”的下拉列表框中选择“FormText”,即设置启动对象为 FormText。请问重新 设置启动对象后,再运行程序时首先显示的窗体是哪一个? 答: 3.文本框中显示的文本是什么颜色?请写出在属性窗口中将文本颜色改成红色的操 作过程以及在程序中设置文本颜色为红色的语句行。 答: 六、修改程序 1.将 FormPicture窗体中命令按钮“显示图片”的单击事件修改如下: Private Sub Command1_Click() tp$= InputBox$("请输入图片所在的位置和名字!","输入图片名","d:\lj\tp.bmp") Picture1.Picture = LoadPicture(tp) End Sub 2.运行程序,在 FormPicture窗体界面上单击命令按钮“显示图片”,打开“输入图 片名”的输入对话框,如图 5-4所示。在对话框中输入要显示的图片的位置和文件名,然 后单击“确定”按钮或按下回车键,相应的图片就显示在图片框中。 图 5-4 裁 剪 线
6
6
实验十二学生成绩统计 学号: 姓名:成绩: 学院(系) 专业: 班级: 实验要求 1.上机实验前必须认真阅读整个实验内容,并认真学习配套教材上的相关知识。 2.完成回答问题部分的所有问题 3.上机完成修改程序部分的操作 4.将完成后的整个实验内容作为实验报告,并从裁剪线处剪下交给任课教师。 实验目的 1.掌握程序界面的设计过程。 2.掌握 ListBox、 Frame控件的建立及使用方法 3.进一步体会属性设置的过程和方法 4.学会使用数组来组织数据 5.掌握Load、 Setfocus、 GotFocus事件的使用方法,进一步理解事件驱动过程。 裁剪线 三、实验内容 创建一个能完成对学生成绩进行输入、统计、显示的工程,该工程包含一个窗体For皿。 具体要求为: 1.程序运行时,由用户在文本框中输入学生人数,以及每个学生的学号、数学成绩、 语文成绩和英语成绩。 2.输入完一个学生的各项内容后,立即计算出三门课的总分,然后将该学生的全部 信息添加到列表框 List中。 3.按学生总分的降序排列在列表框List2中显示出各学生的情况。 成绩输人及续计 回区 按输入顺序县小学生的情况 输入学号及各科成绩 图5-5
7 实验十二 学生成绩统计 学 号: 姓名: 成绩: 学院(系): 专业: 班级: 一、实验要求 1.上机实验前必须认真阅读整个实验内容,并认真学习配套教材上的相关知识。 2.完成回答问题部分的所有问题。 3.上机完成修改程序部分的操作。 4.将完成后的整个实验内容作为实验报告,并从裁剪线处剪下交给任课教师。 二、实验目的 1.掌握程序界面的设计过程。 2.掌握 ListBox、Frame 控件的建立及使用方法。 3.进一步体会属性设置的过程和方法。 4.学会使用数组来组织数据。 5.掌握 Load、SetFocus、GotFocus 事件的使用方法,进一步理解事件驱动过程。 三、实验内容 创建一个能完成对学生成绩进行输入、统计、显示的工程,该工程包含一个窗体Form1。 具体要求为: 1.程序运行时,由用户在文本框中输入学生人数,以及每个学生的学号、数学成绩、 语文成绩和英语成绩。 2.输入完一个学生的各项内容后,立即计算出三门课的总分,然后将该学生的全部 信息添加到列表框List1 中。 3.按学生总分的降序排列在列表框 List2中显示出各学生的情况。 图 5-5 裁 剪 线
四、实验步骤 执行“文件”菜单中的“新建工程”命令创建一个新工程,同时系统自动为新工 程创建一个名字为Form1的窗体 2.在窗体上,利用工具箱创建三个标签控件 Label5、 Label6、 Label7,用于显示提 示文本:;创建一个文本框控件Text5,用于输入学生人数:;创建两个列表框控件 List、 List2,用于显示所有学生的各项信息 利用工具箱上的 Frame控件创建一个框架 Frame,并在其中创建四个标签控件 Labell、 Label2、 Label3、 Label4,用于显示学号和各科成绩名称:创建四个文本框控件 Text1、Text2、Text3、Text4,用于输入学生的学号和成绩 4.通过移动窗体上各个控件的位置和调整控件的大小来合理布置、美化窗体界面, 窗体界面如图55所示。 5.选中窗体上的每一个控件,在属性窗口中依次为他们设置表5-3所示的属性值。 表5-3设置控件属性 控件名称属性 属性值 控件名称性属性值 Forml Caption成绩输入及统计 Labell Caption输入学号及各科成绩 宋体5号 TextI Label7 Caption按总分降序显示学生的情况 宋体5号 宋体5号加粗 a按输人顺显示学生的情况Tex2 Label6 宋体5号加粗 Caption 宋体5号 Labels 宋体5号加粗 Caption 空白 Label Font宋体5号 Text5 Caption 末体5号 Label 宋体5号 Lists Label2 Font|宋体5号 6.双击窗体进入代码编辑窗口,然后输入以下程序。 Dim cjo As Integer,m%,n1%,i%,j,t%’定义全局变量及动态数组 Rem Form Load用于初始化 Private Sub Form Load Text3= 二〃〃 二 End sub
8 四、实验步骤 1.执行“文件”菜单中的“新建工程”命令创建一个新工程,同时系统自动为新工 程创建一个名字为Form1 的窗体。 2.在窗体上,利用工具箱创建三个标签控件 Label5、Label6、Label7,用于显示提 示文本;创建一个文本框控件 Text5,用于输入学生人数;创建两个列表框控件 List1、 List2,用于显示所有学生的各项信息。 3.利用工具箱上的 Frame 控件创建一个框架 Frame1,并在其中创建四个标签控件 Label1、Label2、Label3、Label4,用于显示学号和各科成绩名称;创建四个文本框控件 Text1、Text2、Text3、Text4,用于输入学生的学号和成绩。 4.通过移动窗体上各个控件的位置和调整控件的大小来合理布置、美化窗体界面, 窗体界面如图5-5 所示。 5.选中窗体上的每一个控件,在属性窗口中依次为他们设置表 5-3所示的属性值。 表 5-3 设置控件属性 控件名称 属性 属性值 控件名称 属性 属性值 Form1 Caption 成绩输入及统计 Label1 Caption 英语 Frame1 Caption 输入学号及各科成绩 Font 宋体 5 号 Font 宋体 5 号加粗 Text1 Caption 空白 Label7 Caption 按总分降序显示学生的情况 Font 宋体 5 号 Font 宋体 5 号加粗 Text2 Caption 空白 Label6 Caption 按输入顺序显示学生的情况 Font 宋体 5 号 Font 宋体 5 号加粗 Text3 Caption 空白 Label5 Caption 输入学生人数 Font 宋体 5 号 Font 宋体 5 号加粗 Text4 Caption 空白 Label4 Caption 学号 Font 宋体 5 号 Font 宋体 5 号 Text5 Caption 空白 Label3 Caption 语文 Font 宋体 5 号 Font 宋体 5 号 List1 List 空白 Label2 Caption 数学 List2 List 空白 Font 宋体 5 号 6.双击窗体进入代码编辑窗口,然后输入以下程序。 Dim cj() As Integer, n%, n1%, i%, j%, t% '定义全局变量及动态数组 Rem Form_Load()用于初始化 Private Sub Form_Load() Text1="" Text2="" Text3="" Text4="" Text5="" n1=0 End Sub
Rem text5 ostFocus(根据输入的学生人数重定义数组 n=Val(Text. Text 将输入的学生人数存入变量n中 im cj(n, 5) 重新定义数组 Rem下一语句的功能是在 ListI中添加一个列表项,内容为标题说明 List1. AddItem"学号语文数学英语总分 End sub Rem text4 Lost Focus用于计算总分并将学生成绩存到数组中、添加到List1中 Text1. SetFocus 使控件Text获得焦点 nl=n1+1 其中存放已经输入了各项信息的学生人数 cj(n1, 1)=Val (Textl. Text cj(n1,1)中存放第n个学生的学号 cj(n1, 2)=Val(Tex t2. Te cj(n1,2)中存放第n个学生的语文成绩 cj(n1,3)=Val(Text3.Text)'’cj(n1,3)中存放第n个学生的数学成绩 cj(n1, 4)=Val(Text4. Text cj(n1,2)中存放第n个学生的英语成绩 cj(n1,5)=cj(n1,2)+cj(n1,3)tcj(n1,4)’计算总分并存入数组元素cjn1,5)中 Rem下一语句的功能是在 List中添加一个列表项,即第n1个学生的全部信息 List1. AddItem cj(n1,1)&”"&cj(n1,2)&””&cj(n1,3) &"”&cjn1,4)&”"&cj(n1,5) 裁剪线 Text= Text3 Text4 If nl=n Then Frame enabled=false 使控件 Frame1不允许操作 List2 SetFocus 使控件List2获得焦点 End If End sub Rem list2 GotFocus0将学生信息按总分降序显示在List2中 Private Sub List2 GotFocus O List2. AddItem"学号语文数学英语总分 For i=l to 该双循环是用选择法完成成绩的排序 For j=i+l To n If cj(i, 5)<cj(j, 5)Then T=cj(i,5):cj(i,5)=cj(j,5):cj(j,5)=T’交换数据 T=cj(i,4):cj(i,4)=cj(j,4):cj(j,4) T=cj(i,3):cj(i,3)=cj(j,3):cj(j,3)=T T=cj(i,2):cj(i,2)=cj(j,2):cj(j,2)=T
9 Rem Text5_LostFocus()根据输入的学生人数重定义数组 Private Sub Text5_LostFocus() n=Val(Text5.Text) '将输入的学生人数存入变量n 中 ReDim cj(n,5) '重新定义数组cj Rem 下一语句的功能是在List1 中添加一个列表项,内容为标题说明 List1.AddItem "学号 语文 数学 英语 总分" End Sub Rem Text4_LostFocus()用于计算总分并将学生成绩存到数组中、添加到 List1中 Private Sub Text4_LostFocus() Text1.SetFocus '使控件 Text1获得焦点 n1=n1+1 '其中存放已经输入了各项信息的学生人数 cj(n1,1)=Val(Text1.Text) 'cj(n1,1)中存放第 n1 个学生的学号 cj(n1,2)=Val(Text2.Text) 'cj(n1,2)中存放第 n1 个学生的语文成绩 cj(n1,3)=Val(Text3.Text) 'cj(n1,3)中存放第 n1 个学生的数学成绩 cj(n1,4)=Val(Text4.Text) 'cj(n1,2)中存放第 n1 个学生的英语成绩 cj(n1,5)=cj(n1,2)+cj(n1,3)+cj(n1,4) '计算总分并存入数组元素 cj(n1,5)中 Rem 下一语句的功能是在List1 中添加一个列表项,即第n1个学生的全部信息 List1.AddItem cj(n1,1) & " " & cj(n1,2) & " " & cj(n1,3) _ & " " & cj(n1,4) & " " & cj(n1,5) Text1="" Text2="" Text3="" Text4="" If n1=n Then Frame1.Enabled=False '使控件 Frame1不允许操作 List2.SetFocus '使控件 List2 获得焦点 End If End Sub Rem List2_GotFocus()将学生信息按总分降序显示在List2 中 Private Sub List2_GotFocus() List2.AddItem "学号 语文 数学 英语 总分" For i=1 To n '该双循环是用选择法完成成绩的排序 For j=i+1 To n If cj(i,5) < cj(j,5) Then T=cj(i,5): cj(i,5)=cj(j,5): cj(j,5)=T '交换数据 T=cj(i,4): cj(i,4)=cj(j,4): cj(j,4)=T T=cj(i,3): cj(i,3)=cj(j,3): cj(j,3)=T T=cj(i,2): cj(i,2)=cj(j,2): cj(j,2)=T 裁 剪 线
T=j(i,1):cj(i,1)=cj(j,1):cj(j,1)=T End if List2 AddI tem cj(i, 1)&"& cj(i, 2)&""& cj(i, 3) &”"&cj(i,4)&””&cj(i,5) Next i End sub 说明:框架控件 Frame的功能是将窗体上的控件分组,当框架移动时,其中的控件也 跟着移动。程序运行时,若将框架的 abled属性设置为 False,则该框架中的所有控件 都不允许操作;若将框架的 Visible属性设置为 False,则该框架中的所有控件都不可 列表框控件 ListBox的功能是用于列出可供用户选择的多个项目列表。属性List 于访问列表框的所有列表项。方法 AddI tem用于在程序代码中为列表框添加列表项,格式 [对象]. AddItem列表项[,索引] 其中:列表项是要添加的字符串表达式:索引指明列表项添加的位置,省略时表示在列表 框的最后添加 7.执行“运行”菜单中的“启动”命令运行程序,屏幕上显示窗体界面,在相应的 文本框中输入学生人数、学号及各科成绩,如图5-6(a)所示,输入时可按Tab键跳到下 个输入框。当所有学生的信息输入完毕时就会在List2(下面的框)中按总分降序显示学 生情况,如图5-6(b)所示。 或绿输人及线计 生人数 控输入购序显小学生的 输入学生人数 控输入联序显示学生的情况 输入学号及各耗成 控分降序显示学生的情况 (a) 图5-6 8.当运行程序能完成设计要求时,执行“运行”菜单中的“结束”命令或单击窗体 界面上的关闭按钮可以结束当前程序的运行。 9.执行“文件”菜单中的“工程另存为”命令来保存工程,文件名为sy62. 执行“文件”菜单中的“Fom另存为”命令来保存窗体,窗体文件名为sy62.frm 五、回答问题 1.在属性窗口中将控件 List的 Backcolor属性改成调色板上的浅恢色,将List2 的 isible属性改成 False,再运行程序时List1和List2会有什么改变?
10 T= j(i,1): cj(i,1)=cj(j,1): cj(j,1)=T End If Next j List2.AddItem cj(i,1) & " " & cj(i,2) & " " & cj(i,3) _ & " " & cj(i,4) & " " & cj(i,5) Next i End Sub 说明:框架控件Frame的功能是将窗体上的控件分组,当框架移动时,其中的控件也 跟着移动。程序运行时,若将框架的 Enabled 属性设置为 False,则该框架中的所有控件 都不允许操作;若将框架的Visible属性设置为False,则该框架中的所有控件都不可见。 列表框控件 ListBox 的功能是用于列出可供用户选择的多个项目列表。属性 List 用 于访问列表框的所有列表项。方法 AddItem用于在程序代码中为列表框添加列表项,格式 为: [对象].AddItem 列表项[,索引] 其中:列表项是要添加的字符串表达式;索引指明列表项添加的位置,省略时表示在列表 框的最后添加。 7.执行“运行”菜单中的“启动”命令运行程序,屏幕上显示窗体界面,在相应的 文本框中输入学生人数、学号及各科成绩,如图5-6(a)所示,输入时可按 Tab键跳到下一 个输入框。当所有学生的信息输入完毕时就会在 List2(下面的框)中按总分降序显示学 生情况,如图5-6(b)所示。 (a) (b) 图 5-6 8.当运行程序能完成设计要求时,执行“运行”菜单中的“结束”命令或单击窗体 界面上的关闭按钮可以结束当前程序的运行。 9.执行“文件”菜单中的“工程另存为”命令来保存工程,文件名为 sy6_2.vbp; 执行“文件”菜单中的“Form 另存为”命令来保存窗体,窗体文件名为sy6_2.frm。 五、回答问题 1.在属性窗口中将控件 List1 的 BackColor 属性改成调色板上的浅恢色,将 List2 的 Visible 属性改成False,再运行程序时List1 和List2 会有什么改变? 答: