VB程序设计教程本书目录VisualBasic程序设计教程VB程序设计教程本书目录22.1面向对象概念2.2窗体和基本控件2.3综合应用2.4自主学习---相关控件本章目录第二章VB可视化编程基础VB程序设计教程本书目录32.1面向对象概念1.程序设计的发展初期程序设计(60年代以前)计算机特点:价格高、内存小、速度慢2010年程序追求:指令少、运行快,技巧型的方法存在问题:质量、可读性、维护性、通用性差例如大量使用GoTo语句,面条式0.5万次2010年天河一号2570万亿次VB程序设计教程本书目录4结构化程序设计(70年代以后)程序组成:顺序、选择、循环基本结构设计原则:自顶而下、逐步求精、模块化存在问题:数据和对数据处理分离,维护困难代码可重用性差面向对象程序设计(80年代以后)程序组成:对象作为程序的基本单元核心:封装性、继承性、多态性VB程序设计教程本书目录5初期程序设计……..……..………….……..………..………………………..类结构化程序设计面向对象程序设计初期的程序设计拼装世博会远大馆2000平米、6层楼的建筑、24小时建成--一碗面条式程序(BS)一串珠子式串连成搭积木式VB程序设计教程本书目录62.类和对象对同种客观事物的抽象,包含特征(属性)描述和行为(方法).将反映类的属性、方法、事件封装在一起,构成了面向对象编程的基本元素。本章目录(1)类人类是具体人的抽象属性:身高、体重等行为:哭、笑、打电脑等事件:下雨、铃声等属性方法事件对象的外观特征数据对象的行为、能力外界发生在对象上的事情VB程序设计教程本书目录7(2)对象是类的实例化。例如,张三、李四就是人类的实例化,每个人有各自不同的属性值和方法。本章目录月饼模型(类)月饼(对象)实例化VB程序设计教程本书目录8例如:工具箱内的TextBox是类(它确定了TextBox的属性、方法和事件)窗体上显示的是两个TextBox对象本章目录3.VB.NET中的可视化类和对象TextBox对象TextBox类VB程序设计教程本书目录9属性、事件和方法构成对象的三要素(1)属性存放对象的数据(决定对象外观及功能)。设置:设计阶段利用属性窗口直接设置属性值,方便程序运行时通过语句实现,灵活形式:对象名.属性名=属性值4.对象的属性、事件和方法本章目录默认Command1.Caption=确定例如:VB程序设计教程本书目录10(2)方法方法:对象具有的能力.实现:通过系统设计好的特殊的过程和函数。调用:对象.方法[参数名表]例如:Text1.SetFocus作用:使Text1控件获得焦点,光标在本文框内闪烁。本章目录VB程序设计教程本书目录11发生在对象上的事情同一事件,对不同的对象,会引发不同的反应:(3)事件本章目录教师_铃声()打开电脑讲课…EndSub学生_铃声()听讲记笔记…EndSubVB为对象预先定义了一系列的事件。例如,单击Click、获取焦点GotFocus、按下键盘KeyPress等其他人员_铃声()EndSubVB程序设计教程本书目录12是应用程序处理事件的步骤应用程序设计的主要工作就是为对象编写事件过程的代码。事件过程的形式如下:PrivateSub对象名_事件名([参数列表])…‘事件过程代码EndSub事件过程本章目录VB程序设计教程本书目录13例:单击按钮,使Text1的字体为20磅.SubCommand1_Click()Text1.FontSize=20EndSub一个动作可能同时发生多个事件。例如单击鼠标同时发生了:Click、MouseDown、MouseUp事件编程时,只要对需要的事件过程编码。模板产生用户输入本章目录注意:在代码窗,自动产生事件过程的模板,不要修改模板的内容,只需键入过程的代码。VB程序设计教程本书目录142.2窗体和基本控件2.2.1基本属性(1)Name名称属性所创建的对象名称,在程序中引用。(2)Caption标题属性该属性决定了对象上显示的内容。(3)Height、Width、Top和Left属性决定对象的高度、宽度,和位置。本章目录LeftTopHeightWidth0,0VB程序设计教程本书目录15(4)Enabled属性对象是否允许操作(5)Visible属性对象是否可见(6)Font属性组文本的外观FontName字体、FontSize大小FontBold粗体、FontItalic斜体、FontStrikethru删除线、FontUnderline下划线本章目录例2.1属性设置效果VB程序设计教程本书目录16(7)ForeColor属性前景颜色(8)BackColor属性背景颜色(9)MousePointer鼠标指针类型设置值范围0~15,由系统指定。若为99,由用户提供的图形文件定义鼠标指针形状。(10)MouseIcon属性在MousePointer属性值为99时,存放自定义的鼠标图标文件(.ico或.cur)。图标库在Graphics目录下。本章目录VB程序设计教程本书目录17所谓默认属性是程序运行时,可以改变某控件的值,而不必指定该控件的哪个属性。控件默认属性控件默认属性文本框命令按钮单选按钮TextDefaultValue标签图形、图像框复选框CaptionPictureValue例如,下面两条语句是等价的:Text1.Text=VisualBASICText1=VisualBASIC本章目录控件默认属性VB程序设计教程本书目录182.2.2窗体1.主要属性本章目录作用:是画布,设计界面;运行时呈现在用户面前的窗口标题图标控制菜单框最小化按钮最大化按钮边框样式MaxButtonMinButtonIconCaptionControlBoxBorderStyleVB程序设计教程本书目录19装入和卸掉景图片[Form1.]Picture=LoadPicture(App.Path+“图片文件名)[Form1.]Picture=LoadPicture(“”)改变鼠标指针图标[Form1.]MousePointer=99[Form1.]MouseIcon=LoadPicture(App.Path+\keys.ico)改变窗体图标[Form1.]Icon=LoadPicture(App.Path+“图片文件名)注意:App.Path表示素材文件与工程文件同文件夹代码实现图片、图标的改变VB程序设计教程本书目录202.常用的事件Click:当鼠标单击窗体时,触发该事件。DblClick:当鼠标双击窗体时,触发该事件。Load:当应用程序启动,自动触发该事件。Activated:变成活动窗体时,就会触发该事件。Resize:当改变窗体的大小时,就会触发该事件。本章目录最重要的是Load事件:对属性和变量进行初始化。VB程序设计教程本书目录21例2.2编写四个事件过程,显示不同的背景图案。要求如下:启动窗体:在标题栏显示“装入窗体”,tongji.bmp背景图、窗体边框为Fixed3D;单击窗体:标题栏显示对应文字、tongji-2.bmp背景大小为264×256,图片正好充满窗体。当改变窗体大小:使得窗体固定大小为264×256双击窗体:标题栏显示对应的文字、窗体无最大化和最小化按钮,清除装入的图片。本章目录VB程序设计教程本书目录223.方法使用方法的语法形式:对象.方法([参数列表])窗体方法主要有:Cls、Print、Move多重窗体主要方法:ShowDialog()、Show()、Hide()等主要用于多窗体的显示和隐藏等本章目录VB程序设计教程本书目录232.1.3标签-属性1.主要属性Name、Font、Size、Location、Enabled等其它主要属性:(1)Caption、Alignment:设置显示的文本、文本的对齐方式(2)AutoSize、BackStyle、BorderStyleFalse、0(Transparent)、0(None)1(Fixed)(3)BackColor背景色(默认与窗体背景相同)本章目录作用:标签用来显示文本信息(不能输入信息)VB程序设计教程本书目录24例2.3编写配色方案选择的程序。要求:(1)窗体上放置13个标签,前3个为文本说明,后10个为前景和背景颜色;(2)鼠标指针、窗体图标改为装入的图标;(3)单击某颜色,Label1中显示对应颜色本章目录VB程序设计教程本书目录252.1.4文本框主要属性:(1)Text显示或输入的正文内容(2)MaxLength设置文本框可输入的文字最大长度。默认值为0。本章目录说明:在VB中字符长度以字为单位,也就是一个西文字符与一个汉字都是一个字,长度为1。作用:输入、显示、编辑文本内容。VB程序设计教程本书目录26(3)MultiLine多行属性设置为True时,可输入或显示多行正文;同时有自动换行功能,按Enter键强行换行。(4)ScrollBars滚动条属性属性值:0-None、1-Horizontal、2-Vertical、3-Both本章目录当MultiLine设置为True时,ScrollBars才有效(5)PassWordChar用于设置密码如设置为“*”,显示*;存储的值是用户输入的原文。(6)Locked是否可被编辑默认值为False(可编辑),当设置为True时,只读,文本控件相当于标签控件的作用。VB程序设计教程本书目录27(7)文本内容进行选择操作SelStart选定的正文开始位置SelLength选定的正文长度SelText选定的正文内容例2.4利用(7)属性实现对文本信息复制功能。本章目录要求:当运行程序,单击该窗体时将Text1的前8个字符复制到Text2第1个值为0思考:若要对Text1中任意选定的字符复制到Text2,只要对上面事件过程作如何修改?VB程序设计教程本书目录28文本框-事件(1)Changed事件当Text属性值发生改变时引发该事件例在文本框每输入一个字符就引发一次事件(2)KeyPress事件按下并且释放键盘上的一个键时,引发焦点所在控件的KeyPress事件,所按键的值存放在参数KeyAscii中例对回车的判断KeyAscii=13对输入的字符判断:Chr(KeyAscii)本章目录VB程序设计教程本书目录29(3)LostFocus事件对象失去焦点时发生LostFocus事件该事件主要是用来对数据进行验证和确认,常用于检查Text属性的内容。(4)GotFocus事件与LostFocus事件相反,当一个对象获得焦点时发生本章目录VB程序设计教程本书目录30文本框-方法文本框最有用的方法是SetFocus,把光标移到指定的文本框中。其形式如下:[对象.]SetFocusSetFocus还可以用于Command、List等、控件。本章目录VB程序设计教程本书目录31例2.5利用文本框,实现简单的两数加法运算。要求:对输入的数据进行合法性检验,过滤不合法的数据。本章目录分析:1.当Text1输入数据结束按Tab键进行合法性检验,调用LostFocus事件2.当Text2输入数据结束按回车键进行合法性检验,调用KeyPress事件3.合法性检验要求输入的数字数据,调用函数IsNumeric(s)返回True合法False非法4.非法数据时处理:清除文本框内容、焦点回到文本框VB程序设计教程本书目录322.2.5命令按钮Command用于程序运行时执行相应的事件1.属性(1)Caption命令按钮上显示的文字(2)Style按钮样式0——Standard:默认,按钮上不能显示图形1——Graphical:按钮上可以显示图形和文字(3)Picture在按钮装入图形(4)ToolTipText加以文字提示2.事件命令按钮一般接收Click事件本章目录VB程序设计教程本书目录33例2.6建立一个类似记事本的简单程序。要求:具有剪切、复制和粘贴的编辑操作具有字体大小的格式设置分析:利用文本框的SelText属性实现“