VisualBasic6.0程序设计案例教程(上)ppt.ppt

上传人:za****8 文档编号:15802168 上传时间:2020-09-07 格式:PPT 页数:211 大小:2.23MB
收藏 版权申诉 举报 下载
VisualBasic6.0程序设计案例教程(上)ppt.ppt_第1页
第1页 / 共211页
VisualBasic6.0程序设计案例教程(上)ppt.ppt_第2页
第2页 / 共211页
VisualBasic6.0程序设计案例教程(上)ppt.ppt_第3页
第3页 / 共211页
资源描述:

《VisualBasic6.0程序设计案例教程(上)ppt.ppt》由会员分享,可在线阅读,更多相关《VisualBasic6.0程序设计案例教程(上)ppt.ppt(211页珍藏版)》请在装配图网上搜索。

1、Visual Basic 6.0程序设计案例教程(上),本课程以VB6.0为语言背景 Visual Basic(简称VB)是Microsoft公司开发的一种通用的面向对象的程序设计语言,用于开发Windows环境下的应用程序。 “Visual” 指的是开发图形用户界面 (GUI) 的方法。 “Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 语言,一种在计算技术发展历史上应用得最为广泛的语言。 Visual Basic Scripting Edition (VBScript) 是广泛使用的脚本语言,它是 Visu

2、al Basic 语言的子集,可嵌入HTML语言中,用于网页设计,如ASP(Active Server Page)文件。,VB程序设计课程介绍,1. C及C+系列:C,C+ (C+ Builder,VC+,VC+.Net) 2. Basic系列:QBASIC,VB ,VB.Net 3. 数据库管理系统 Visual FoxPro、PowerBuilder、Oracle等 4. Java:Sun公司研制,开发网络应用软件,从C发展而来 5. Net :微软公司研制 支持Web服务的软件开发环境,采用分布式计算技术。 包含ASP.Net,ADO.Net,VC+.Net,VB.Net等 Net200

3、2中核心语言是C#; C#综合了C+和Java的优点 Net2003中核心语言是J#; J#类似于C#和Java,程序语言发展的现状,目前世界上有两大主流软件 一是Java,二是Net,关于VB,VB是从原有的BASIC发展起来的,它的语法简单,但功能强大。 目前可供选择的程序设计语言很多,如C+、Java等,但不可否认的是,VB是目前最通用、最易于使用的编程语言之一。 虽然有些人“看不起”Basic语言,但要知道Microsoft公司当初是从Basic语言起家的。微软公司总裁Bill Gates曾经这样说过: “如果您有任何解决不了的问题,都可以给我拿来,我都可以用Basic来解决。” 微软

4、公司始终对Basic充满信心,打算将Basic一直发展下去。,关于VB,当Windows操作系统问世不久,人们在开发Windows应用程序时遇到了很大困难时,就是VB改变了这种状况。微软公司总裁比尔盖茨说,VB1.0是 “用Basic语言开发Windows应用程序最强有力的工具”、“令人震惊的新奇迹”。 VB发展历程: 1991年推出VB1.0 1992年推出VB2.0 1993年推出VB3.0 1995年推出VB4.0 1997年推出VB5.0 1998年推出VB6.0 2002年推出VB.NET7.0,教学目的,教学内容,工具性:掌握一种计算机开发工具,以解决实际问题 基础性:为以后学习计

5、算机应用课程(结合专业)打下良好的基础 抽象性和逻辑性:培养抽象、逻辑思维能力 提高计算机的应用能力,VB程序设计课程介绍,教学目的,教学内容,VB程序设计课程介绍,学习方法,VB程序设计课是一门实践性很强的课程。要多练,并要善于模仿。,认 识 VB,认识 Visual Basic,学习一门程序设计语言,首先要了解其特点和开发环境。 VB作为一种新型的面向对象程序设计语言,其设计思想和编程方法与传统编程语言有着重大差别。,第一章 Visual Basic的基本概念,1.1 Visual Basic 简介 1.2 VB集成开发环境介绍 1.3 VB程序设计中的一些基本概念 1.4 窗体和基本控件

6、 1.5 VB应用程序的工作方式及创建应用程序的步骤 1.6 案例一 “文本信息复制 ” 1.7 案例实训,1.1 程序设计语言,1. 三种程序设计语言 要利用计算机来解决问题,就必须采用程序设计语言来编制程序。程序设计语言大致有三类:机器语言,汇编语言,高级语言,机器语言 00111110 00011010 11111110 00100100 ,汇编语言 LD A,26 ADD A,36 OUT (48),A HALT ,高级语言 LET A26+36 PRINT A END ,2. 高级语言的两种翻译方式,计算机不能直接识别和处理高级语言 一般采用两种翻译方式,一是编译方式,二是解释方式。

7、它们所采用的翻译程序分别称为编译程序和解释程序 VB采用上述两种翻译方式,通常情况下,学习阶段采用解释方式;应用阶段采用编译方式,3. 面向过程和面向对象(两种程序设计方法),(1) 面向过程程序设计(传统方法) 以解决问题的过程作为程序的基础和重点 数据和过程分离 执行程序的流程是预先安排好的 (2) 面向对象程序设计 模仿人们在客观世界中对事物分类的自然倾向,把问题分解为对象而非过程。符合人们的习惯的思维方式 把程序和数据“封装”起来成为一个对象,并从相同类型的对象中抽象出一种新型的数据结构类(如模型与成品) 类具有封装性、继承性和多态性。有利于提高程序的可重用性和可维护性,1.2 VB概

8、述,1、VB的发展过程 基本BASIC 结构化BASIC 可视化BASIC 网络化BASIC(VB.Net) 2、VB的特点 1) 面向对象的可视化编程 把程序和数据“封装”起来成为一个对象;每个对象都是可视的。从VB工具箱中选用控件(即现成部件,如文本框、命令按钮等),构成应用程序的用户界面。,2)事件驱动的编程机制 传统的程序设计语言面向过程,VB语言面向对象 通过事件来触发执行相应的事件过程(“事件驱动“) ,从而执行对象的操作和达到运算、处理的目的。 3)结构化的设计语言 4)友好的VB集成开发环境,1.2 VB概述,3、VB6.0的新特性,1)数据访问的新特性 2) Internet

9、功能的增强 3) 控件、语言和向导方面的新增特性 a) DataGrid、DataList、DataCombo等新增的数据控件,它们都支持新的ADO控件,使VB数据库操作更加灵活、方便。 b)可以创建自己的数据源和数据绑定对象。 c)函数可以将数组作为返回值,并且可以为可变大小的数组赋值。 d)安装向导、数据对象向导、数据窗体向导以及应用程序向导。这些新增的向导及功能增强的向导,可以使开发人员能设计出更优秀的应用程序。 4)创建ActiveX控件更加轻松方便 5)在线帮助更加完善,1) 启动VB 按运行一般应用程序的方法来启动它。 创建一个默认的“标准EXE”类型的VB应用程序 “新建工程”对

10、话框 VB集成开发环境 2) 退出VB,4、VB的启动和关闭,1.3 VB的集成开发环境,集VB程序的设计、编辑、编译和调试于一体,集中提供程序开发所需要的各种工具、窗口和方法。 1 、主窗口 由标题栏、菜单栏和工具栏组成 。 VB工作状态(模式)(标题栏总显示当前模式) 设计模式:创建应用程序的大多数工作都是在设计时完成的。在设计时,可以设计窗体、绘制控件、编写代码并使用“属性”窗口来设置或查看属性设置值。 运行模式:代码正在运行的时期,用户可与应用程序交流。可查看代码,但不能改动它。 中断模式:程序在运行的中途被停止执行时。在中断模式下,用户可查看各变量及不是属性的当前值,从而了解程序执行

11、是否正常。在此模式下会弹出“立即”窗口,在窗口中输入简短的命令,并立即执行。,窗体设计器,工具箱,工程资源 管理器,对象属 性窗口,查看对象,查看代码,2、工具箱和控件,VB工具箱中包含了各种VB标准控件。包含一个指针和20个标准控件。 控件就像盖房子使用的门、窗、砖瓦等,都是现成部件,只要到现场组合就可以了。 1. 在窗体上添加一个控件 2. 控件的缩放、移动、复制和删除 3. 选定多个控件 4. 控件的布局,工具箱,3 窗体编辑器窗口,设计应用程序的用户界面。设计窗体的外观:添加控件、图形,移动控件、改变大小等。,4. 工程管理窗口,工程是指用于创建一个应用程序的文件的集合。工程管理窗口管

12、理当前工程中的窗体和各种模块 在工程管理窗口有3个按钮: 单击“查看代码”按钮,可打开“代码编辑器窗口”查看代码; 单击“查看对象”按钮,可打开“窗体设计器查看”查看正在设计的窗体; 单击“切换文件夹”按钮,则可以隐藏或显示包含在对象文件夹中个别项目列表。,工程的管理,VB是通过工程(Project,也称为项目)来管理应用程序中的所有不同文件的。 1. 工程中的文件(常用) 工程文件 .vbp 窗体文件 .frm 标准模块文件 .bas 2. 创建、打开、保存和关闭工程 说明:一个应用程序可以包括多个工程。但对于初学者来说,一般只需用到单个工程,因此通常不必执行“添加工程”命令 。 3. 添加

13、、删除和保存文件,4 生成可执行文件 两种运行程序的方式:解释方式;编译方式 执行“文件”菜单中的“生成.exe”命令 示例: (1) 将示例1的应用程序“编译”成可执行文件,然后进入Windows环境,直接运行该程序文件 (2) 分别采用解释方式和编译方式运行“时钟”程序,实例2,示例1,5. 属性窗口,用于列出所选定窗体或控件的属性设置值,并允许用户设置或修改。 属性是指对象的特征,如大小、标题或颜色等数据。 这些属性值将作为程序运行时各对象属性的初始值。 (1)对象列表框 (2)排序方式选项卡 (3) 属性列表框 (4) 属性解释区,6. 代码编辑窗口,用来编辑程序代码。 在设计模式中,

14、通过双击窗体或窗体上任何对象或通过“工程管理器”窗口中的“查看代码”按钮来打开如图所示代码编辑器窗口。 各种事件过程、用户自定义过程等源程序代码的编写和修改均在此窗口中进行。,7. 立即窗口,在VB集成环境IDE中,运行“视图/立即窗口”命令或按下“Ctrl+G”组合键即可打开立即窗口。 立即窗口是VB所提供的一个系统对象,在设计状态时可以在立即窗口中进行一些简单的命令操作,如变量赋值或用“?”或Print(两者等价)输出一些表达式的值。 如图1-8所示,8.窗体布局窗口,显示窗体在屏幕中的位置。调整窗体的位置,1.4 对象和事件的基本概念,1、 对象与类 1)对象 对象是现实世界中的实体,可

15、以是具体的事物,也可以是抽象的事物,如一个人、一台计算机、一辆车等都是对象;一份帐单,一张表格也是对象。 每个对象都有自己的特征、行为和发生在该对象上的一切活动。例如把某个“人”作为对象,该对象具有身高、肤色、体重、视力等特征,具有跑步、说话、吃饭等行为,以及外界作用在“人”上的各种活动,如起床铃声、高考发榜等。 在面向对象程序设计中把对象的特征称为属性,对象的行为称为方法,对象的活动称为事件,这构成了对象的三要素。 对象是构成VB程序的基本成分和核心。对象是VB系统中的基本运行实体,如窗体(Form)、标签(Label)、文本框(TextBox)、命令按钮(CommandButton)等。

16、对象是一组程序代码和数据的集合。,2) 类 类是同种对象的集合与抽象,是一个整体概念 ,也是创建对象实例的模板,对象是类的实例化。类与对象是面向对象程序设计语言的基础。 以“汽车”为例,说明类与对象的关系。 汽车是一个笼统的名称,是整体概念,我们把汽车看成一个“类”,一辆辆具体的汽车(比如你的汽车)就是这个类的实例,也就是这个类的对象。 实际上,工具箱的各种控件就是控件类,当在窗体上放置一个控件时,就将类转换为对象,既创建了一个控件对象,简称为控件。如图1-9所示类与对象关系,3) VB中对象的建立和命名 对象的建立 方法一: 单击工具箱控件对象 ,然后在窗体上按住左键拖拉到所需要的大小后释放

17、。 方法二: 双击工具箱控件对象,则立即在窗体出现一个默认大小的对象框。 对象的命名 每一个对象都有有自己的名字。每个窗体、控件对象在建立时VB系统给出了一个默认名。用户可通过属性窗口设置(名称)来给对象命名。 命名的原则: 1)必须由字母或汉字开头、随后可以是字母、汉字、数字、下划线(最好不用)串组成。 2)长度=255个字符。,2、 对象的属性、事件与方法 1)属性(Property) 对象中的数据就保存在属性中,所有对象都有各自的属性。它们是用来描述和反映对象特征的参数。例如:控件名称(Name)、标题(Caption)、颜色(Color)、字体(FontName)等属性决定了对象展现给

18、用户的界面具有什么样的外观及功能。 对象属性设置的方法: 方法一: 在设计模式下,通过属性窗口直接设置对象的属性。 方法二: 在程序的代码中通过赋值实现(动态修改): 对象.属性=属性值 例如,给一个对象名为 “cmdDisp”的命令按钮“Caption”属性赋值字符串 “你好”,其在程序代码中的书写格式为: cmdDisp.Caption=“你好” 设置标签的标题,2) 事件、事件过程及事件驱动,(1) 事件 对于对象而言,事件就是发生在该对象上的行为。每个对象都有一系列由系统预先设置好的、能被对象识别的动作。 例如:鼠标的移动(MouseMove)、单击(Click)和双击(DblClic

19、k)、改变 “Change”等。每一种对象能识别的事件是不同的。 (2) 事件过程 当在对象上发生了事件后,应用程序就要处理这个事件,而处理的步骤就是事件过程。 事件过程的形式如下: Sub 对象名_事件名(参数列表) . (处理事件的程序代码) End Sub 例如,单击名为“cmdHide”的命令按钮,使命令按钮不可见,则对应的事件过程如下 Sub cmdHide_Click() CmdHide.Visible=False End Sub,(3)事件驱动,当某个事件(一般由用户操作来触发) 发生时,系统就会自动执行此事件的事件过程。 由事件控制整个程序的执行流程 事件过程要经过事件的触发才

20、能被执行,这种工作模式称为事件驱动方式。,示例,命令按钮Command1的单击(Click)事件过程为: Private Sub Command1_Click() Forml.Caption = 在窗体上画圆 以圆心(2400,1500), 半径为800画圆 Forml.Circle (2400,1500),800 End Sub,示例1,设计界面,运行界面,对象 (命令按钮),事件驱动 运行时单击命令按钮,即触发了Click事件,系统就会自动执行事件过程Command1_Click中的程序代码,程序代码 (事件过程),(3) 方法 方法是对象能够执行的动作。它是对象本身内含的函数或过程,用于

21、完成某种特定的功能 一般格式: 对象名.方法名(参数) 示例: Form1.Cls 消除窗体Form1上的内容 Form1.Print “Visual Basic 6.0” 在当前窗体上显示 若当前窗体是Form1,则可写为: Print “Visual Basic 6.0” 如省略对象,表示为当前对象,一般指窗体。,1.5 窗体和基本控件,1、窗体 窗体是VB编程中最常用的对象,它就像一块“画布”,是所有控件的容器 。,【实例1.1】,编程要求:在窗体Form1被加载时,将其大小设置为屏幕大小的60,并居中显示。 通过窗体的Load事件来实现的程序代码为: Private Sub Form_

22、Load() Form1.Width = Screen.Width * 0.6 设置窗体的宽度 Form1.Height = Screen.Height * 0.6 设置窗体的高度 Form1.Left = (Screen.Width - Form1.Width) / 2 在水平方向上居中显示 Form1.Top = (Screen.Height - Form1.Height) / 2 在垂直方向上居中显示 End Sub,常用属性,(1) Name属性:表示控件名称。在VB中任何对象都有的属性。 (2) Caption标题属性:决定了在窗体上显示的文本内容 . (3) Font属性:改变文本

23、的外观。其中: FontName属性是字符型,决定对象上正文的字体(缺省为宋体)。 FontSize属性是整型,决定对象上正文的字体大小。 FontBold属性是逻辑型,决定对象上正文是否是粗体。 FontItalic属性是逻辑型,决定对象上正文是否是斜体。 FontStrikeThru属性是逻辑型,决定对象上正文是否加一删除线。 FontUnderLine属性是逻辑型,决定对象上正文是否带下划线。 (4) Enabled 属性:用于确定一个窗体或控件是否能够对用户产生的事件作出反应,该属性是逻辑值。 True :允许用户进行操作,并对操作出响应(缺省值) 。 False:呈暗淡色,禁止用户进

24、行操作。 注:如果使窗体或其他“容器”对象无效,那么在其中的所有控件也无效,(5) Visible属性:决定窗体或控件是否可见。 True :运行时控件可见(缺省值) 。 False:运行时控件隐藏,用户看不到,但控件本身是存在的。 (6)BackColor属性和ForeColor属性 BackColor属性用于返回或设置对象的背景颜色, ForeColor属性用于返回或设置在对象里显示图片和文本的前景颜色。 在程序运行中设置颜色的话,可以使用RGB或QBColor 函数指定颜色 例如, 将窗体Form1的背景色设置为红色,则可使用: Form1.backcolor=RGB(255,0,0)

25、或 Form1.backcolor=QBColor(4) Form1.BackColor = vbRed,(7) BorderStyle边框风格属性:可以控制窗体如何调整大小。它可取以下6种值: 0-None:无边框; 1-Fixed Single:单线边框,不可以改变窗口大小; 2-Sizable:双线边框,可以改变窗口大小; 3-Fixed Double:双线框架,不可以改变窗口大小。 4-Fixed Tool Window:窗体外观与工具条相似。有关闭按钮 ,不可以改变窗口大小。 5-Sizable Tool Window:窗体外观与工具条相似。有关闭按钮 ,可以改变窗口大小。,2)事件

26、,窗体事件是窗体识别的动作,窗体最常用的事件如下: (1) Click/DblClick事件:单击/双击窗体触发。 (2) Load事件:窗体被装入时触发的事件。该事件通常用来在启动应用 程序时对属性和变量进行初始化。 (3)Unload事件:卸载窗体时触发该事件。 (4) Resize事件 无论是因为用户交互,还是通过代码调整窗体的大小,都会触发一个Resize事件。,3)方法,窗体常用的方法有打印输出Print、移动Move、清除Cls、显示Show、隐藏Hide等方法。 方法的使用的形式: 对象.方法 参数 注:省略对象默认为窗体。,(1)print 方法 格式: 对象.PrintSpc

27、(n)|Tab(n)表达式列表;|, 作用: 在对象上输出文本信息。 参数说明: 对象:窗体、图形框或打印机(Pinter) ,省略对象在窗体上输出。 Spc(n)函数:在输出表达式前插入n个空格,允许重复使用。 Tab(n)函数:用于将指定表达式的值从第n列开始输出,允许重复使用。 ;(分号) : 光标定位上一个显示的字符后。 ,(逗号) :光标定位在下一个打印区的开始位置处。每个打印区占14列。 无;, : 换行。,【实例1.2】,在窗体Form1的单击事件中写入如下代码: Private Sub Form_Click() a = 10: b = 3.14: c = 100 Print a

28、=; a, b=; b Print a=; a, b=; b Print a=; a, b=; b Print 空一行 Print a=; a, b=; b Print a=; a, Tab(20); b=; b 从第20列开始打印输出b= Print a=; a, Spc(20); b=; b 输出a值后,插入20个空后输出b= Print Print a=; a, b=; b Print Tab(20); a=; a, b=; b 从第20列开始打印输出 Print Spc(20); a=; a, b=; b 空20列从21列开始打印输出 End Sub,(2)Cls 方法 格式 : 对象

29、.Cls 作用 : 清除运行时在窗体或图形框中显示的文本或图形。 注意 : Cls方法不能清除在设计时的文本和图形。清屏后坐标当前回到原点。 例: Form1.Cls 说明:使用Cls方法后,对象的当前坐标为(0,0),(3) Move方法 格式 : 对象.Move left,top,width,height 作用 : 移动窗体或控件,并可改变其大小。 对象:可以是窗体及除时钟、菜单外的所有可视控件,省略代表窗体。 Left、top、width、height:数值表达式,以twip为单位。分别用来表示窗体相对于屏幕左边缘的水平坐标、相对于屏幕顶部的垂直坐标、窗体的新宽度和新高度。,(4) Sh

30、ow(显示)方法 Show方法用于在屏幕上显示一个窗体,调用 Show 方法与设置窗体 Visible 属性为 True 具有相同的所用。 (5) Hide(隐藏)方法 Hide方法用于使指定的窗体不显示,但不从内存中删除窗体。,【实例1.3】,实现将指定的窗体在屏幕上显示或隐藏的切换。 设窗体名称为Form1,程序代码如下: Private Sub Form_Click() Form1.Hide 隐藏窗体 MsgBox 单击确定按钮,使窗体重现屏幕 显示信息 Forml.Show 重现窗体 End Sub,1.5 窗体和基本控件,2、标签控件 标签(Lable)主要是用来显示文本信息,而不能

31、输入信息。标签控件的内容只能用Caption属性来设置,不能直接编辑。 基本属性 Name、Height、Width、Top、Left、Enabled、Visible、Font、ForeColor、BackColor等与窗体的对应属性的使用相同。,其它属性,(1)Caption属性 Caption属性用来改变Label控件中显示的文本。Caption属性允许文本的长度最多为1024字节。缺省情况下,当文本超过控件宽度时,文本会自动换行,而当文本超过控件高度时,超出部分将被裁剪掉。 (2) Alignment属性 设置Caption属性中文本的对齐方式,共有三种可选值: 0 左对齐(Left J

32、ustify); 1 右对齐(Right Justify); 2 居中对齐(Center Justify)。 (3)BackStyle属性 该属性用于确定标签的背景是否透明。有两种情况可选:值为0时,表示背景透明,标签后的背景和图形可见;值为1时,表示不透明,标签后的背景和图形不可见。 (4)AutoSize属性 AutoSize属性确定标签是否会随标题内容的多少自动变化。如果值为True,则随Caption内容的大小自动调整控件本身的大小,且不换行;如果值为False,表示标签的尺寸不能自动调整,超出尺寸范围的内容不予显示。,1.5 窗体和基本控件,3、命令按钮 在VB程序中,命令按钮是使用

33、最多的控件对象,当用户选择某命令按钮就会激活相应的事件过程。 基本属性: Name、Height、Width、Top、Left、Enabled、Visible、Font等与窗体的对应属性的使用相同。,常用属性,(1)Caption: 标题属性命令按钮显示的内容,可在某字母前加 “ (4)ScrollBars: 当MultiLine为True时,该属性才有效,滚动条的形式。 0-None:无滚动条、 1-Horizontal:水平滚动条、 2-Vertical垂直滚动条、 3-Both水平和垂直滚动条。 (5)Locked:是否可被编辑属性,默认逻辑值False表示为可编辑。 (6)PassWo

34、rdChar属性 设置PasswordChar属性为了掩盖文本框中输入的字符。 该属性的设置只有在MultiLine设为 False才有效。它常用于设置密码输入。 (7)SelStart、SelLength和SelText属性 这三个属性是文本框中对文本的编辑属性。 SelStart:选中文本的起始位置。第一字符 的位置为0。若没有选择文本,指文本的插入点位置,如果SelStart的值大于文本的长度,则SelStart取当前文本的长度: SelLength:设置或返回文本框中选定的文本字符串长度(字符个数)。 SelText:设置或返回当前选定文本中的文本字符串。,常用事件,(1) Chang

35、e事件: 当改变文本框的Text属性时会引发该事件。当用输入一个字符,就会触发一次Change事件。 (2)KeyPress事件 当用户按下并释放键盘上一个键时,就会触发一次该事件,并返回一个KeyAscii参数(字符的Ascii值)到该事件过程中。,例1.4:在文本框Text1的Change事件编写有如下程序代码: Private Sub Text1_Change() Print Text1.textEnd Sub,例1.5:在文本框中输入大写字母“F” Private Sub Text1_KeyPress(KeyAscii As Integer) Print KeyAscii, Chr(K

36、eyAscii) End Sub 以上过程的结果如图1-13所示结果为:,1、 VB应用程序的工作方式 VB应用程序采用的是以事件驱动应用程序的工作方式。在事件发生 时,事件驱动应用程序执行相应事件的程序代码。 下面是事件驱动应用程序中的典型工作方式: (1)启动应用程序,装载和显示窗体。 (2)窗体(或窗体上的控件)接收事件。事件可由用户引发(例如通过键盘或鼠标操作),可由系统引发(例如定时器事件),也可由代码间接引发(例如当代码装载窗体时的Load事件)。 (3)如果在相应的事件过程中已编写了相应的程序代码,就执行该代码。 (4)应用程序等待下一次事件。,1.6 VB应用程序设计初步,设计

37、VB应用程序的步骤 用户界面(用户使用计算机的综合操作环境) 最常用的对象是窗体(即窗口),各种控件对象必须建立在窗体上。,1.6 VB应用程序设计初步,VB程序设计,设计用户界面,编写程序代码,建立对象,对象属性设置,先要确定对象,然后针对 这些对象进行代码编程。,2、设计VB应用程序的大致步骤如下: (1)新建工程 (2)建立用户界面的对象; (3)设置对象的属性值; (4)编写程序代码,建立事件过程; (5)保存应用程序 (6)运行与调试应用程序,1.6 VB应用程序设计初步,1、设计要求 程序运行后, 在如图1-14所示的文本框中输入一段文字后,单击“文本复制”按钮,则文本框右边会显示

38、同样的文字,但复制文字的颜色、字体、大小都发生的变化,同时按钮的标题文字也发生的变化,如图1-15所示;单击“退出”按钮结束整个程序。,1.7 案例一 “文本信息复制 ”,2、设计目的 通过案例一的设计,使读者了解VB程序的开发步骤,理解VB程序的运行机制,可以初步掌握界面设计、对象属性设置和编写程序代码的基本方法,同时还掌握运行程序和存储程序的方法。,1.7 案例一 “文本信息复制 ”,在两个按钮的单击事件中写入如下代码: Private sub command1_click( ) Label2.caption=text1.text 将文本框Text1中的内容赋给标签Label1的标题 Co

39、mmand1.caption=“复制完毕” 给Command1按钮标题赋相应的文字 End sub Private sub command2_click( ) End 退出程序执行 End sub,设计一个设置文字字体和大小的程序。运行界面见图1-20,1.8 案例实训,设计要求: 窗体上有若干个按钮,分别表示字体的大小,单击这些按钮后,示例文字的字体和大小相应变化。,第2章 顺序结构程序设计,本章基础知识,数据类型 常量与变量 运算符与表达式 语句、方法及函数 VB常用内部函数,数据类型,标准数据类型 整型 (Integer )、长整型(Long)、单精度实型 (Single )、双精度实型

40、 (Double)、字符型 (String)、日期型(Date)、逻辑型(Boolean ) 、对象型(Object)和变体型( Variant) 自定义数据类型,取值范围-3276832767 例:32766、-75%,取值范围: -21474836482147483647,取值范围:065535,日期为 100.1.19999.12.31,时间为:0:00:0023:59:59,True(真)和False(假),变量与常量,常量 标识符及关键字 普通常量 例:10,3.14, 5 mod -3=2,True -1 False 0,M/N的余数:M-N*(MN),运算符与表达式,字符运算符

41、字符: 欢迎使用本系统 End If If s santa1225 Then MsgBox 密码输入错误,退出, vbYes + vbCritical + 0, 结束 End End If End Sub,语句、方法及函数,MsgBox方法格式: MsgBox(,),语句、方法及函数,VB函数: 内部函数(标准函数) 用户自定义函数 日期函数,附录E,语句、方法及函数日期函数,Date返回系统日期的函数 Day (date) WeekDay(Date)返回当前是星期代号(17),星期日为1,星期一为2 WeekDayName(N)将星期代号N(17)转换为星期名称。 Now返回系统日期和时间

42、Year() Month()返回月份代号(112) MonthName(N)返回月份名,语句、方法及函数日期函数,【实例2.2】制作图2-7所示的日历牌。,语句、方法及函数日期函数,lblyear.Caption = Year(Date) lblmonth.Caption = MonthName(Month(Date) lblday.Caption = Day(Date) lblweek.Caption = WeekdayName(Weekday(Date),控件,计时器(Timer) 图像框(PictureBox)和图片框(Image) 水平与垂直滚动条,控件计时器,功能:计时器可以在一定的

43、时间间隔自动激发计时器事件(Timer) 计时器常用属性 Enabled属性 决定计时器是否开始计时。若属性值为True(默认值) ,表示启动计时器开始计时,False表示暂停计时器的使用。 Interval属性 设置计时器自动执行的时间间隔。设置的时间单位为毫秒,其范围是065535ms。若将Interval属性值设置为1000ms,则计时器每隔1秒自动执行一次。系统初始值设置为0。 计时器事件 计时器的主要事件是Timer。在Enabled属性值为True时,每隔Interval属性值指定的时间间隔触发一次该事件。,控件计时器,【实例2.2】扩展,控件计时器,例题所用函数: Int(x)函

44、数 功能:取不超过x的整数。 例:int(3.5)的值3;int(-3.5)的值-4 Rnd函数 功能:产生一个(0,1)范围之内的实数 例: Rnd * 100产生(0,100)之内的随机实数 Int(Rnd * 100)产生0,99之内的随机整数 Int(Rnd * 100) + 10产生10,109之内的随机整数 Int(upper-lower+1)* Rnd)+ lower,控件计时器,Randomize 功能:保证每次运行程序时所产生的随机数与前一次的产生值无关 QBColor(N) 功能:设置颜色 参数N:015的整数 函数值:一种颜色值,Private Sub Timer1_Ti

45、mer() Dim colnum As Integer Randomize colnum = Int(16 * Rnd) frmcalendar.BackColor = QBColor(colnum) End Sub,控件计时器,控件图像框和图片框,图片框主要用于放置图形信息,也可以放置其它控件即作为其它控件的容器。图像框用来显示图形。显示的可以是位图、图标、图元文件、JPEG或GIF文件。 图片框和图像框的Picture属性用于返回/设置其中显示的图形。设置显示图形,设计阶段可直接利用属性窗口指定,运行阶段可使用LoadPicture函数加载,具体形式如下:对象名.Picture=LoadP

46、icture(“文件名”),控件图像框和图片框,图片框的AutoSize属性 :决定图片框的大小是否随着图片大小的变化而自动调整 图像框的Stretch属性 :调整图像框或图片的大小 属性值为False(默认值)时,图像框可根据图片调整大小;属性值为True时,图片可以根据图像框来调整大小。,控件图像框和图片框,LoadPicture函数 功能: 运行阶段可使用LoadPicture函数加载图形。 使用方法: 对象名.Picture=LoadPicture(“文件名”),控件水平与垂直滚动条,关于滚动条 属性 Max和Min Value Smallchange Largechange 事件 C

47、hange Scroll 函数 RGB(red,green,blue ) 参数取值0255,-3276832767,控件,【实例2.3】制作电子时钟 .,操作步骤一 设计用户界面,操作步骤二 设置关键对象属性,操作步骤二 设置关键对象属性,操作步骤三 编写代码,计时器Timclock的Timer事件代码如下: Private Sub tmrclock_Timer() imgchange1.Visible = False imgchange2.Visible = True lblclock.Caption = Time End Sub,操作步骤三 编写代码,计时器TimPicture的Timer

48、事件代码如下: Private Sub tmrpicture_Timer() imgchange1.Visible = True imgchange2.Visible = False End Sub,操作步骤三 编写代码,滚动条的代码: Private Sub hsbtimer_Change() tmrclock.Interval = hsbtimer.Value tmrpicture.Interval = hsbtimer.Value End Sub,控件,【实例2.4】设计两个变量交换值的演示程序 .,操作步骤一 设计用户界面,操作步骤三 编写代码,交换两个图像框的Picture属性值的代

49、码: Private Sub tmrexchange_Timer() imgexchange.Picture = imgrabbit.Picture imgrabbit.Picture = imgsheep.Picture imgsheep.Picture = imgexchange.Picture End Sub,操作步骤三 编写代码,“Stop”按钮代码 Private Sub Cmdstop_Click() tmrexchange.Enabled = False End Sub “Start”按钮代码 Private Sub Cmdstart_Click() tmrexchange.En

50、abled = True End Sub,案例电子备忘录,操作步骤一 设计用户界面,操作步骤三编写代码,“星期一”保存代码: Private Sub Imgb1_Click() b1 = txtmon.Text answer = MsgBox(星期一备忘录已保存, 0 + 64 + 0, 备忘录) End Sub,操作步骤三编写代码,查看“星期一”备忘录代码: Private Sub txtmon_Click() txtmon.Text = b1 answer = MsgBox(单击左边按钮保存修改, 0 + 64 + 64, 备忘录) End Sub,操作步骤三编写代码,时钟与动画代码 Pr

51、ivate Sub Timer1_Timer() lbltime.Caption = Time() Imgpicture.Move Imgpicture.Left 100 If Imgpicture.Left = 0 Then Imgpicture.Left = 5880设置图像框的左边距为初始边距(5880为此图像框的Imgpicture.Left的初始值 End If End Sub,操作步骤三编写代码,Dim key As String定义字符型变量key Const password = memo123定义字符型常量password值为密码memo123 key = InputBox(

52、请输入密码:, 备忘录) If key = password Then txtmon.Enabled = True设置文本响应事件(单击事件),初始属性设置为不响应事件 txtfri.Enabled = True Imgb1.Enabled = True设置图像响应事件(单击事件),初始属性设置为不响应事件 ,第3 章 选择结构程序设计,本章内容,基本概念及语法 逻辑运算符与表达式 If语句 情况语句Select Case 条件函数 控件 复选框(CheckBox) 单选按钮(OptionButton) 框架(Frame),选择结构,Not:当操作数为True时,结果为False, 当操作数为

53、False时,结果为True And: 两操作数同时为True时,结果为True,否则为False。 Or: 两操作数同时为False时,结果为False,否则为True。,逻辑运算符,逻辑运算符 Not(取反,优先级1)、And(与,优先级2)、Or(或,优先级3)、Xor(异或,优先级3) 逻辑表达式 逻辑表达式的值,优先级: 当一个表达式中出现了多种不同类型的运算符时, 不同类型的运算符的优先级如下: 算术运算符关系运算符逻辑运算符。,If语句的一般格式单分支结构,单分支结构If语句 语句形式: If Then If Then 语句块 End If 语句功能: 当“表达式”的值为真时执行

54、语句(或语句块),否则执行后继操作。,为关系表达式、逻辑表达式或算术表达式。若为算术表达式,其值是非零为真,零为假,一条语句或多条,且为多条时语句间用冒号分隔,并必须写在一行上,一条或多条语句。“Then”不能与其后的语句写在同一行上,否则必须加上分隔符,If语句的一般格式单分支结构,【实例3.1】制作简单的逻辑运算符与表达式示例器,其功能是输入逻辑表达式,输出运算结果及其说明。,操作步骤一 设计用户界面,操作步骤二 编写代码,Private Sub cmdequal_Click() Dim b1 As Boolean, b2 As Boolean, b3 As Boolean If txto

55、perand1 Then b1 = CBool(txtoperand1) b2 = CBool(txtoperand2) If txtoperator = Not Or txtoperator = not Then b3 = Not b2 Lbl2.Caption = 单目运算,当操作数为假时,结果为真,反之为假。 End If,If语句的一般格式双分支结构,双分支结构IfThenElse语句 语句形式: If Then Else If Then Else End If 语句功能: 当表达式的值为真时,执行Then 后的“语句块1”(或“语句1”),否则执行Else后面的“语句块2”(或“语句

56、2”),If语句的一般格式双分支结构,【实例3.2】在窗体所示的第一个文本框(txtin)中输入字符串,当输入字符句号“.”时表示输入结束,第二个文本框(txtcount)动态统计字符串中字符的个数(不可以用求字符串长度的函数)。,操作步骤一 设计用户界面,操作步骤二 编写代码,Dim n As Integer 窗体级变量 Private Sub txtin_Change() If Right$(txtin.Text, 1) . Then n = n + 1 txtcount.Text = n Else txtin.Enabled = False End If End Sub,If语句的一般格

57、式多分支结构,语句形式: If Then ElseIf Else End If 语句功能: 为真时,执行,If语句的一般格式多分支结构,If语句的一般格式多分支结构,【实例3.3】建立如图3-7所示的窗体界面。在窗体左边的文本框(txtinput)中输入字符串,字符串以“*”为结束标志;右边的三个文本框(txtletter、txtdigital、txtother)中分别显示字母字符、数字字符和其他符号字符的个数。,操作步骤一 设计用户界面,操作步骤二 编写代码,Dim n1 As Integer, n2 As Integer, n3 As Integer 窗体级变量 Private Sub t

58、xtinput_Change() Dim s As String s = Right$(txtinput.Text, 1) If s “* Then,操作步骤二 编写代码,If UCase(s) = A And UCase(s) = 0 And s = 9 Then n2 = n2 + 1 txtdigital.Text = n2 Else n3 = n3 + 1 txtother.Text = n3 End If,操作步骤二 编写代码,Else txtinput.Enabled = False 文本框不响应事件 End If End Sub,If语句的一般格式If语句的嵌套,语句形式: If

59、 Then If Then End If Else End If,If语句的一般格式If语句的嵌套,例: 写出输出结果。 a=1: b=3: c=5:d=4 if ab then if cd then x=1 else if ac then if bd then x=2 else x=3 else x=6 else x=7 print x,情况语句Select Case,语句形式: Select Case 变量或表达式 Case 表达式列表1 语句块1 Case表达式列表2 语句块2 Case Else 语句块n+1 End Select,情况语句Select Case,语句功能: 根据Sel

60、ect Case 变量或表达式中的结果与各Case子句中的值比较决定执行哪一组语句块。如果有多个Case短语中的值与Select Case 变量或表达式中的结果匹配,则执行第一个与之匹配的语句块。其流程图见图.,情况语句Select Case,情况语句Select Case,语句说明: “变量或表达式”可以是数值型数据或字符串表达式。 “表达式列表”与“变量或表达式”的类型必须相同。 “表达式列表”可以是下面四种形式之一: 表达式 一组用逗号分隔的枚举表达式(如Case 1,2,4,6) 表达式1 To 表达式2(如Case 1 to 5) Is 关系表达式(如Case Is 6) 其中,前一

61、种形式与某个值比较,后三种形式与设定的范围比较。,条件函数,IIf函数 IIf (条件,表达式1,表达式2) 当条件为真时,函数的返回值为“表达式1”,反之为“表达式2” 例如 : grade=IIf(score=60,”及格”,”不及格”) If score=60 then grade=”及格” Else grade=” 不及格” End if,条件函数,Choose函数 Choose(数值类型变量,数值表达式1,数值表达式2,数值表达式I,) 数值类型变量的值为i时函数的返回值为“数值表达式i”的值,条件函数,例: color1=choose(numc,”红”,”黄”,”蓝”,”绿”) S

62、elect case numc Case 1 Color1=”红” Case 2 Color1=”黄” Case 3 Color1=”蓝” Case 4 Color1=”绿” End select,14,控件,复选框(CheckBox) 单选按钮(OptionButton) 框架(Frame),控件复选框,复选框主要属性 Caption属性 Value属性 0(VbUnchecked):未选定,默认值。 1(VbChecked):被选定。 2(VbGrayed):灰色,复选框显示选中标记,但不允许修改。 复选框常用事件是Click(单击),控件单选按钮,单选按钮的常用属性: Caption属性

63、,单选按钮的标题。 Value属性,单项按钮的状态。 True表示选中 False表示未选中。 单选按钮常用事件是Click(单击),控件框架,框架的常用属性有: Caption属性,框架的标题。 Enabled属性,框架是否可用。 True表示框架内的所有控件是可用的 False表示框架内的所有控件是不可用。 在框架中放置其他控件的步骤是: 添加框架 工具箱中选择其他控件,用鼠标拖曳的方式放置于框架内,控件,【实例3.5】设计如图3-9所示的“网络课堂”窗体。,操作步骤一 设计用户界面,操作步骤二 编写代码,单项按钮代码(以optcsh单选按钮为例) Private Sub optcsh_C

64、lick() lblprompt.Caption = Space(4) For j = 1 To 4 - i Print Spc(1); Next j For j = 1 To 2 * i - 1 Print *; Next j Print Next i,补充例题2代码,For i = 2 To 1 Step -1 Print Tab(20); For j = 1 To 4 - i Print Spc(1); Next j For j = 1 To 2 * i - 1 Print *; Next j Print Next I End Sub,补充例题3,例:请输入n值,编写程序输出下列图形(例

65、如n=5). 1 2 3 4 5 1 1 2 3 4 1 1 1 2 3 1 1 1 1 2 1 1 1 1 1,补充例题3代码,Private Sub Form_Activate() Dim i As Integer, j As Integer For i = 1 To 5 For j = 1 To i Print 1; Next j For j = 2 To 6 - i Print j; Next j Print Next i End Sub,补充例题4,译密码,abcdefghijklmnopqrstuvwxyz,补充例题4代码,If ch = a And ch = z Then asch = Asc(ch) - 97 + 1 trap = Ch

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!