欢迎来到天天文库
浏览记录
ID:32367165
大小:384.26 KB
页数:34页
时间:2019-02-03
《vb课程设计论文》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Vb课程设计题目排序演示专业自动化学生姓名王亮学号2012118064指导教师王福林第33页共34页目录一、设计任务···················3二、总体设计思路···············4三、画出程序总体框图···········4四、系统的调试··············6五、收获体会···················8六、源代码·····················9七、主要参考资料···············23第33页共34页一、设计任务(1)程序启动后,显示主界面。首先单击“产生10个随机数”按钮来产生10
2、个随机数,并显示在10个文本框中;然后选择一种“演示模式”和“排序方式”,其中演示模式可以直接给出排序结果,也可以通过动画动态演示整个排序过程,排序方式可以按从小到大顺序,也可以按从大到小顺序排序。(2)在主窗口的空白区单击鼠标右键,弹出快捷菜单。从中选择“排序算法”命令,打开对话框,从中选择一种排序方式,单击不同排序方式时,“算法描述”中简要介绍了这种算法。单击“确定”按钮返回到主窗口,主窗口中最上方框架控件的标题文字显示当前所选的排序算法。(3)设置完毕,单击“开始排序”按钮(此按钮在生成数据之前是不可用的),启动排序过程。若选择了动画方
3、式,红色背景的文本框表示当前正在比较的元素,黄色的代表已排序的元素,2个运动的文本框表示交换过程。在排序过程中可以调节水平滚动条的位置来控制演示过程的速度。排序结束后程序以消息框的形式报告数据交换的次数。可以使用快捷菜单中的“将数据写入文件”命令将排序后的数据保存到“data.txt”中覆盖原有内容。(4)选择窗口主菜单中的“颜色设置”命令,主窗口扩大,底部显示“颜色设置”框架,可以对“文本背景色”、“文本前景色”、“已排序元素色”和“交换结点色”进行设置。再选择此命令,窗口恢复到原来的大小。第33页共34页(5)选择主菜单中的“退出”命令可
4、退出本程序,程序显示消息对话框予以确认。二、系统总体设计方案排序方法多重窗体窗体编辑器设计界面排序演示模块代码信息提示框编写代码三、画出程序整体框图1.快捷菜单第33页共34页2.启动后的主界面3.确认退出对话框4.颜色设置第33页共34页5.显示交换次数6.“排序算法选择”对话框二、系统的调试1、问题:停止按钮不能使其在开始运行时候停止。解决:利用了Boolean(逻辑变量)定义了一个使程序停止的变量f,然后又定义了一个PrivateDeclareSubSleepLib"kernel32"(ByValdwMillisecondsAsLong
5、),声明sleep函数,可以使程序暂停一段时间,最后用时钟(timer)来设定所需暂停的随机时间(s)。注意timer函数设置时的interval值,以毫秒为单位,1000ms=1s。2、第33页共34页问题:消息对话框(msgbox)的形式,及msgbox函数的返回值如何的选取,设置。解决:在对“停止”按钮编码时,一开始未给msgbox赋值,导致程序不起作用,后来赋值后,采用了msgbox函数里的vbyes与vbno,采用了if...then...else...但程序无法退出,最后只对vbno做了代码编制,退出程序则采用了“unload”函
6、数,最后程序终于调试成功。1、问题:动态演示如何演变,交换次数无法得到。解决:采用timer函数,以时间来对它进行控制,也可以拖得滚动条来控制它动态演示时的速度。演示代码:Ifa(k)>a(j)AndOption1.ValueThenText1(k-1).BackColor=yanse1'''''''''''''''交换元素颜色Text1(j-1).BackColor=yanse1DoEventsCallSleep(1000)调用了函数sleeplinshi=a(j)a(j)=a(k)a(k)=linshijiaohuan=jiaohuan+
7、1Text1(k-1).Text=a(k)Text1(j-1).Text=a(j)Text1(k-1).BackColor=yanse'''''''''''''已经排序的颜色Text1(j-1).BackColor=yanseEndIfIfa(k)8、xt1(k-1).Text=a(k)Text1(j-1).Text=a(j)Text1(k-1).BackColor=yanseText1(j-1).BackCol
8、xt1(k-1).Text=a(k)Text1(j-1).Text=a(j)Text1(k-1).BackColor=yanseText1(j-1).BackCol
此文档下载收益归作者所有