VisualBasic程序设计简明教程第二版VisualBasic程序设计简明教程第一章VisualBasic程序设计概述(1)第二章VB简单的程序设计(3)第三章VB语言基础(2)第四章基本的控制结构(6)第五章数组(4)第六章过程(5)第七章常用控件(4)第八章界面设计(3)第九章文件(2)第十章图形(3)第十一章数据库技术(1)第一章VisualBasic程序设计概述(1学时)1.1引例1.2VB主要功能和特点1.3VB集成开发环境1.1引例1.1一行内容在窗体左、右移动;移动两种方法:手动和自动,当自动时,文字闪烁显示;当内容超出窗体,进行反弹。1.1引例2.1对输入的字符进行转换的程序。转换规则:•大写字母转换成小写字母,•小写字母转换成大写字母•空格不转换•其余转换成“*”。要求:每输入一个字符,马上就进行判断和转换。通过上述两例说明VB面向对象、可视化、事件驱动的特点。1.2Vb主要功能和特点1.具有面向对象的可视化设计工具2.事件驱动的编程机制3.提供了易学易用的应用程序集成开发环境4.结构化的程序设计语言5.支持多种数据库系统的访问6.Active技术7.VB6在开发环境上、网络功能等的增强8.完备的help联机帮助功能1.3VB集成开发环境工具箱工程窗口属性窗口窗体布局立即窗口窗体窗口1.主窗口应用程序窗口,由标题栏、菜单栏和工具栏组成2.窗体(form)窗口设计vb程序的界面3.代码(code)窗口编辑窗体、标准模块中的代码4.属性(properties)窗口所有窗体或控件的属性设置5.工程资源管理器(projectexpror)窗口保存一个应用程序所有的文件6.工具箱(toolbox)窗口显示各种控件的制作工具,供用户在窗体上设计第二章Vb简单的程序设计(3学时)2.1程序设计方法的发展2.2VB中的有关概念2.3建立简单的应用程序2.4基本控件和属性2.5工程的管理及环境的设置2.6生成可执行文件和制作安装盘2.7程序调试2.8常见错误2.1程序设计方法的发展1.初期的程序设计高运行效率、少占用内存为目标2.结构化程序设计程序的可读性、可维护性为目标程序=算法+数据结构的面向过程的程序设计3.面向对象的程序设计降低程序的复杂性、提高软件的开法效率和改善工作界面为目标程序=对象+消息的面向对象的程序设计2.2对象的有关概念1.类类是创建对象实例的模板,包含了创建对象的属性描述和行为特征的定义.2.对象是类的一个实例,继承了类的属性、方法。Vb中常用的对象有:窗体、控件等。3.对象的建立和命名4.对象的三要素(1)属性对象的性质,即用来描述和反映对象特征的参数。(2)方法对象的行为,即将一些通用的过程编写好并封装起来,作为方法供用户直接调用。(3)事件响应对象的动作称为事件,它发生在用户与应用程序交互时。如单击控件、鼠标移动、键盘按下等。•事件过程指附在该对象上的用户编写的程序代码,是事件的处理程序。•事件驱动过程是图形用户界面的本质,由用户控制而代码作出响应。5.VB程序的执行步骤如下:(1)启动应用程序,装载和显示窗体;(2)窗体(或窗体上的控件)等待事件的发生;(3)事件发生时,执行对应的事件过程;(4)重复执行步骤(2)和(3);(5)直到遇到“END”结束语句结束程序的运行;或按“结束”强行停止程序的运行。2.3建立简单的应用程序以例2.1为例1.建立用户界面的对象2.对象属性的设置3.对象事件过程及编程4.程序运行和调试5.保存文件2.4基本控件和窗体一.常用属性1.Name名称属性创建的对象名称,有默认的名.在程序中,控件名是作为对象的标识而引用,不会显示在窗体上。2.Caption标题属性该属性决定了控件上显示的内容。3.Height、width、top和left属性LeftTopHeightWidth4.Enabled属性控件是否可操作.当设置为false时,呈暗淡色,禁止用户进行操作.5.Visible属性控件是否可见.当设置为false时,用户看不到,但控件本身存在。6.Font属性Fontname字体Fontsize字体大小Fontbold是否是粗体Fontitalic是否斜体Fontstrikethru是否加一删除线Fontunderline是否带下划线例2.2在窗体是建立两个命令按钮Command1和Command2,Command2的Font通过属性窗口设置,其余属性通过代码实现。7.Forecolor前景颜色属性设置控件的前景颜色(即正文颜色).其值是一个16进制常数,用户可以在调色板中直接选择所需颜色。8.Backcolor背景颜色属性9.Backstyle背景风格属性0-transparent:透明显示,即控件背景颜色显示不出来10.BorderStyle边框风格属性0-None:控件周围没有边框1-FixedSingle:控件带有单边框。11.Alignment属性控件上正文水平对齐方式0:正文左对齐1:右对齐2:居中12.AutoSize属性控件是否根据正文自动调整大小,False.13.WordWarp属性AutoSizeTrue时,WordWarp才有效按正文字体大小在垂直方向上改变显示区域的大小。14.TabIndex属性决定了按Tab键时,焦点在各个控件移动的顺序。各个控件默认TabIndex值就是以控件建立时的顺序,第一个为0.15.控件默认属性反映该控件最重要的属性,使用时可省略属性名。.注意:Command的默认属性为Default,当该属性为True,当按Enter键,该控件起作用。例2.3控件设置效果默认控件名Name标题Caption有关属性设置Form1颜色、对齐、鼠标属性例MousePointer=99,MouseIcon=Key04.icoLabel1左对齐Alignment=0,BorderStyle=1Label2居中Alignment=1,BorderStyle=1Label3自动AutoSize=True,WordWarp=False,BorderStyle=1Label4背景白BackColor=&H00FFFFFF&,BorderStyle=0Label5前景红ForeColor=&H000000FF&,BorderStyle=0标题图标控制菜单框最小化按钮最小化按钮边框样式二.窗体1.属性Caption标题MaxButton、MinButtonIcon、ControlBoxPicture、AutoRedrawBorderStyle(012345)WindowsState(0-正常、1-最小化、2-最大化)2.事件Click、DblClick和LoadLoad当装入窗体时激发,通常用于对属性和变量初始化3.方法Print、Cls和Move等例2.4上述属性、Click、DblClick和Load事件演示。三.标签Label用于显示文本(输出)信息,不能作为输入信息的界面。例2.5.显示浮雕效果的文字,实现方法:字颜色、标签位置四.文本框TextBox是一个文本编辑区域,可在该区域输入,编辑和显示正文内容。1.其他属性•Text:正文内容•Maxlength:设置正文的最多字符个数,0任意长度值.,•MultiLine:是否为多行,默认一行.FALSE•ScrollBars:当MultiLine为True时,该属性才有效,表示滚动条的形式0-None、1-Horizontal、2-Vertical、3-Both。•Locked:是否可被编辑属性,False,表示为可编辑。•PassWord:口令字符.Text属性返回输入的数据,屏幕显示该字符,•SelStart,SelLength,SelText:选中文本的起始、长度、内容。例2.6复制选中的文本2.常用事件•Change:当改变文本框的Text属性时会引发该事件.•KeyPress(KeyAsciiAsInteger):同上,并可返回一个KeyAscii参数KeyAscii为13,按回车键;为0去除刚输入的字符.•LostFocus:当控件失去焦点时发生.•GotFocus:当控件获得焦点时发生.3.常用方法[对象.]SetFocus:是把光标移到指定的文本框对象中。4.文本框的应用数据过滤例2.7要求输入合法的数字数据。当输入结束时(按Tab键),对于输入正确的数据,显示正确信息;对输入的非数字数据,则响铃(Beep)、显示错误信息、清除文本框中的内容,并使焦点重新回到文本框。•Text2_LostFocus当输入结束按Tab键时,该事件激发•IsNumeric(Text2):判断是否输入非数字数据.•Text2.SetFocus:使焦点重新回到文本框五.命令按钮CommandButton接受用户输入的命令.输入命令可以有三种方式:鼠标单击Tab键焦点到该按钮快捷键1.其他属性•Caption:命令按钮显示的内容,可设置快捷键,例&Ok,显示Ok•Value:检查该按钮是否按下.该属性在设计时无效.•Picture:按钮可显示图片文件(.bmp和.Ico),当Style为1时有效•Style:确定显示的形式.0只能显示文字,1文字、图形均可。•ToolTipText:设置工具提示,和Picture结合使用。2.事件Click3.例2.8建立一个允许剪切、复制和粘贴的简单便笺板程序。可增加内容:利用MouseMove事件决定命令按钮的有效性,即当选中内容,“剪切”、“复制”按钮有效,否则无效。六常用方法方法是面向对象的,故使用的形式为:[对象.]方法1.Print方法形式:[对象.]Print[{Spc(n)|Tab(n)}][表达式列表][;|,]作用:在对象上输出信息对象:窗体、图形框或打印机(Printer),省略对象在窗体上输出。Spc(n)函数:插入n个空格,允许重复使用。Tab(n)函数:左端开始右移动n列,允许重复使用。;(分号):光标定位上一个显示的字符后。,(逗号):光标定位在下一个打印区的开始位置处。无;,时换行。开始打印的位置是由对象的CurrentX和CurrentX属性决定,缺省为打印对象的左上角0,0。注意:Print方法在Form_Load事件过程中起作用,必须设置窗体的AutoRedraw为True。例2.9显示图形PrivateSubForm_Click()Fori=1To5PrintTab(i);String(6-I,▼);Spc(6);String(I,▲)NextiEndSub注意:String(number,character)返回指定长度重复字符的字符串。考虑:若把Spc(6)换成Tab(6),效果如何?2.Cls方法形式:[对象.]Cls作用:清除运行时在窗体或图形框中显示的文本或图形。注意:不清除在设计时的文本和图形。3.Move方法形式:[对象.]Move左边距离[,上边距离[,宽度[,高度]]]作用:移动窗体或控件,并可改变其大小。对象:可以是窗体及除时钟、菜单外的所有控件例2.10图形移到窗体的中心。七.应用举例例2-11编一计算月支付贷款的程序。现要求根据房产商提供的信息,买房者选择房型、面积、单价、按揭期等信息,计算每月支付代款的程序。窗体1:列表框选择数据、标签显示数据、文本框输入数据;窗体2:图形框显示房屋的平面图。Pmt函数计算月支付贷款2.5工程的管理及环境的设置一.工程的组成工程文件包含了一个应用程序的所有文件:•窗体文件(.frm):控件及属性、事件过程和自定义过程•窗体的二进制数据文件(.frx),自动产生同名.frx文件。•标准模块文件(.bas)•类模块的文件(.cls)•资源文件(.res)•ActiveX控件的文件(.ocx)二.创建、打开和保存工程三.添加、删除和保存文件1.窗体名和窗体文件名概念窗体名:窗体的Name属性,在代码中用来引用该窗体,同一工程不能有相同的窗体名;窗体文件名:窗体存放在磁盘上的文件名,该文件包含了该窗体的所有控件属性和代码,同一文件夹不能有相同的文件名