Visual Basic 程序设计
第2章 Visual Basic 程序设计基础
*
内容简介
结构化程序设计基础
可视化编程的基础
程序设计概述
程序设计概述
程序
程序(Program):是计算机的一组指令,经过编译和执行,计算机才可以完成一个具体的任务。
程序设计语言
程序设计语言(Programming Language):是用于编写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。
程序设计概述
程序设计
简单地说,程序设计就是设计程序的过程。具体地说,程序设计(Programming)就是指设计、编制、调试程序的方法和过程。抽象地说:
程序=数据(Data Structure)+算法(Algorithm)。
程序设计概述
一般程序设计步骤
1、分析问题
对于给定的任务要进行认真的分析,研究给定的条件,分析最后应达到的目标,找出解决问题的规律,选择解题的方法,完成实际问题。
2、设计算法
设计解题的方法和具体步骤。
3、编写程序
根据得到的算法,用一种高级语言编写出源程序,并通过测试。
4、对源程序进行编辑、编译和连接
5、运行程序,分析结果
结构化程序设计基础
结构化程序设计的原则
自顶向下
逐步细化
模块化设计
限制使用GOTO语句
结构化程序设计的三种基本结构
顺序结构
选择结构
循环结构
*
结构化程序设计基础
结构化程序设计算法的表示方式
1. 流程图
结构化程序设计基础
结构化程序设计算法的表示方式
2. N-S图
结构化程序设计基础
结构化程序设计算法的表示方式
3. 伪码表示
还有一种用接近高级语言的代码描述程序设计的结构,例如:VB语言分支结构可以用如下语句的描述:
IF 条件描述 THEN
条件满足时的计算过程
ELSE
条件不能满足时的计算过程
END IF
*
对象
是窗体和控件的总称
可视化编程的基础
窗体对象
图片框对象
文本框对象
命令按钮对象
*
对象的属性(Properties)
属性用来表示对象的特征,每一种对象所具有的属性不同。
可视化编程的基础
*
对象的属性(Properties)
属性用来表示对象的特征,每一种对象所具有的属性不同。
属性的设置
(1)在设计阶段,从属性窗口设置,只用于属性的初始化设置
先激活对象,再设置属性
(2)在运行阶段,由程序语句设置或改变属性的值。
[对象名.] 属性名 = 属性值
可视化编程的基础
*
对象的事件(Event)与事件驱动
事件是由系统事先设定的,能为对象识别和响应的动作。每一种对象能识别的事件是不同的。
可视化编程的基础
*
每个事件过程由一个相应的事件触发(驱动),而不是由主程序调用。
事件驱动过程 ,程序没有固定的执行顺序。
对象待命
用户/系统触发事件
对象对事件的响应
(程序代码)
可视化编程的基础
*
可视化编程的基础
可视化编程的基础
对象的方法(Method)
对象的方法是对象执行的动作,即对象本身含有的函数和过程。 它用于完成某种特定功能而不能响应某个事件,如Print(打印对象)、Show(显示窗体)、Move(移动)方法等。每个方法完成某个功能,用户无法看到其实现的步骤和细节,更不能修改,用户能做的工作只是按照约定直接调用它们。
“方法”是针对对象的,所以调用“方法”的形式与调用一般子程序和函数不同,应该指明是哪个对象调用的。即
[对象名.]方法名 参数1,参数2,……
*
窗体对象- 单窗体程序设计
窗体可比喻为一张画纸,进入VB后,可以使用工具箱中的工具在其上进行界面设计,也可以使用窗体的属性来“装扮”窗体(如改变窗体的外观,添加丰富的色彩,装入事先准备好的图片,改变它的尺寸等等)。
窗体的结构
*
窗体对象-单窗体程序设计
缺 省 窗 体
*
窗体对象- 单窗体程序设计
窗体的主要属性
Name (窗体名称)
窗体名称在程序代码中作为窗体对象的标识名。窗体名称可以缺省,也可以自定义 (规则:必须以一个字母或汉字开头,可已包含数字和下划线,但不能包含空格或标点符号)
Caption (窗体标题)
窗体标题是出现在窗体标题栏的文本内容
窗体名称与窗体标题是有区别的
*
窗体对象- 单窗体程序设计
窗体的主要属性
BorderStyle (边框样式)
用数值来表明窗体边框的风格
BackColor与ForeColor(窗体的背景色与前景色)
颜色值用一个长整数表示。点击属性栏右边的 ,会弹出一个颜色设置组合框。同样,使用“视图”菜单中的“调色板”命令也可以设置窗体等对象的前景色和背景色
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
窗体的主要属性
Font(正文字体)
设置窗体上所显示的正文的字体、字号和字形等。点击字体属性栏右边的对话框按钮 时会弹出一个“字体对话框”。默认的字体为“宋体”
Icon (图标)
设置位于窗体左上角控制盒上的图标
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
窗体的主要属性
Width 、Height 、Left、 Top
窗体的位置与大小,单位为特维(Twip)
Enabled(活动属性)
决定窗体能否被访问。
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
窗体的主要事件
Load
Click 、MouseDown、MouseUp
鼠标事件
KeyPress、KeyDown 、KeyUp
键盘事件
DblClick、UnLoad
其它事件
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
窗体的主要方法
Cls方法
[对象名.] Cls
Move方法
[对象名.] Move Left, Top, Width, Height
Print方法
[对象名.] Print [输出项1,输出项2,……]
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
【例2-1】设计一个窗体,窗体上有3个命令按钮:“窗体变大”、“窗体变小”、“退出”。当程序运行后,窗体上还会显示一个狮子,狮子随窗体变大或变小。
设计界面
运行界面
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
步骤一:设计用户界面。在窗体上放置3个命令按钮。
步骤二:设置对象属性。
退出
Caption
窗体变大
Caption
CmdExit
名称
命令按钮3
CmdLarge
名称
命令按钮1
窗体变小
Caption
改变窗体尺寸
Caption
CmdSmall
名称
命令按钮2
Form1
名称
窗体
属性值
属性名
对象
属性值
属性名
对象
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
步骤三:编写程序代码。
Load事件过程:窗体Form被加载到内存时,下面的程序段就会被执行(通常设置变量的初始值)。
Private Sub Form_Load()
Picture = LoadPicture("D:\VB\")
End Sub
[对象.] Picture = LoadPicture("文件名")
其中:对象可以是窗体、图片框和图像框, 缺省为窗体。
赋
值
语
句
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
在程序代码中设置Picture属性:LoadPicture函数
(1)文件名用西文双撇号,不能是中文双引号。
(2)文件名要带有路径。路径可以是绝对路径,也可以是相对路径,图片外挂。如:
Picture = LoadPicture("D:\vb\ ")
Picture = LoadPicture( & "\ ")
(3)指定文件名为空,表示卸载已载入的图形文件。如
LoadPicture() 或 LoadPicture("")
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
改变窗体的尺寸
Private Sub CmdLarge_Click()
Height = Height + 500
Width = Width + 500
End Sub
窗体高度Height和宽度Width的单位为缇Twip,一英寸等于1440Twip。
注
释
*
第2章 可视化编程初步
窗体对象- 单窗体程序设计
退出应用程序
Private Sub CmdExit_Click()
End
End Sub
步骤四:保存与调试
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
建立多窗体的步骤是:
1、先建立一个窗体
2、添加新窗体
3、保存工程文件
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
多重窗体的添加 / 删除
添加窗体
执行菜单命令“工程” / “添加窗体”
在“工程资源窗口”内执行右键菜单命令“添加” / “添加窗体”
删除窗体
可以激活该窗体,执行菜单命令“工程” / “移除窗体”
指向“工程资源窗口”欲删除的窗体名,执行右键菜单的“移除窗体”命令
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
多重窗体的切换(加载 / 卸载、隐藏 / 显示)
Load方法将窗体加载到(只加载不显示)内存,可以引用窗体中的控件和属性,格式:
Load 窗体名称
Unload方法从内存卸载窗体,格式:
Unload 窗体名称
Show方法兼有装入和显示窗体两种功能,格式:
[窗体名称.] Show
Hide 方法使窗体隐藏,即不在屏幕上显示,但仍存在内存中,格式:
[窗体名称.] Hide
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
多重窗体的启动
通过菜单命令“工程” / “工程属性” 指定一个启动窗体;若未指定,系统把设计时的第一个窗体作为启动窗体。
多重窗体的存取
每个窗体应分别保存到.frm的窗体文件中。
只须打开该工程的. vbp管理文件,则属于该工程的所有文件(包括.frm和.bas文件)均装入内存。
多重窗体的编译
无论一个工程包括多少窗体,都可以通过菜单命令“文件” / “生成 *.exe” 生成Windows中的可执行文件。
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
【例2-2】设计一个程序,程序中包括两个窗体。一个窗体显示红花,另一个窗体显示黄花。运行后先显示红花窗体,单击红花窗体后,显示黄花窗体;单击黄花窗体又返回到红花窗体。
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
步骤一:设计界面
新建窗体Form2
先分别将Form1与Form2存盘,再将管理文件.vbp存盘
存盘前后工程窗口的区别
存盘前后工程窗口的区别
存盘前后工程窗口的区别
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
步骤二:设置属性(窗体)
名称缺省,标题为“红花”、“黄花”
步骤三:代码
' 窗体Form1代码
Private Sub Form_Load()
Picture = LoadPicture( & "\")
End Sub
' 窗体Form2代码
Private Sub Form_Load()
Picture = LoadPicture( & "\")
End Sub
?
系统能区分2个窗体的代码吗??
*
第2章 可视化编程初步
窗体对象- 多窗体程序设计
' 从窗体Form1切换到Form2
Private Sub Form_Click()
End Sub
' 从窗体Form2切换到Form1
Private Sub Form_Click()
End Sub
?
Load与Show的区别?
Unload与Hide的区别?
启动窗体?
*
第2章 可视化编程初步
控件是VB中预先定义好的,程序中能够直接使用的对象。利用控件编程,使程序员免除了大量重复性的工作,能够以最快的速度和效率开发具有良好用户界面的应用程序。VB中的控件通常分为3种类型:内部控件、ActiveX控件、可插入的对象。
控件与控件工具箱
*
第2章 可视化编程初步
控件是预先定义好的,程序中能够直接使用的对象。VB中的控件分为3类:内部控件、ActiveX控件、可插入的对象。
内部控件
内部控件是控件工具箱中包含的控件。它们被“封装”在VB系统中,不可以从控件工具箱中删除。
使用方法
单击控件图形按钮,在窗体上合适位置拖出该控件的对象。
双击控件图形按钮,在窗体正中间会自动显示该控件的一个对象,再用鼠标调整其大小及位置。
控件与控件工具箱
*
第2章 可视化编程初步
控件与控件工具箱
*
第2章 可视化编程初步
ActiveX控件
各种版本的VB以及其他软件厂商另外为用户提供了大量的ActiveX控件,补充内部控件的功能。如数据绑定控件、通用公共对话框控件(见P209)、动画控件、多媒体控件等。
ActiveX控件文件的扩展名为ocx或dll,通常存放在Windows的System32子目录中。
添加或删除ActiveX
选择菜单命令“工程” / “部件” / ‘控件’选项卡
控件与控件工具箱
*
第2章 可视化编程初步
控件与控件工具箱
*
第2章 可视化编程初步
可插入对象
将外部应用程序(如Excel电子表格、PowerPoint幻灯片、Word文档编辑器等)作为对象插入到窗体中,以扩展VB应用程序的功能。
添加或删除可插入对象
选择菜单命令“工程” / “部件”
/ ‘可插入对象’选项卡
例如:添加Word程序
控件与控件工具箱
*
可视化编程环境
集编辑、编译、链接、运行于一体
*
可视化编程环境
集成开发环境的3种状态
看图标:设计状态 高亮;运行状态 高亮
看窗口标题条标题
!!
修改程序要返回设计状态
*
可视化编程环境
属性窗口
对象下拉列表框的使用:
可以从设计窗体中点选对象,也可以从属性窗口的对象下拉列表框中选择对象,特别是被遮盖的对象。
查找和使用不熟悉的属性:
查看属性说明区。
按F1键,用上下文帮助
*
可视化编程环境
代码窗口
*
可视化编程环境
编程时可以使用系统提供的自动列出成员、自动显示快速信息、自动语法检查等功能,提高编辑效率。
自动列出成员(输入对象的属性和方法时)
自动显示快速信息(显示语句和函数的语法格式)
自动语法检查(可以自动检查语句语法错误)
*
可视化编程环境
自动列出成员
选择菜单命令“工具” / “选项” / ‘编辑器’卡,在“代码设置”框中选中“自动列出成员”
*
可视化编程环境
自动显示快速信息
选择菜单命令“工具” / “选项” / ‘编辑器’卡,在“代码设置”框中选中“自动显示快速信息”
*
可视化编程环境
自动语法检查
选择菜单命令“工具” / “选项 / ‘编辑器’卡,在“代码设置”框中,选中“自动语法检查”。
*
可视化编程环境
界面设计进阶
对象的复制
选“编辑” / “复制”命令(或Ctrl+C),再选“编辑” / “粘贴”命令(或Ctrl+V) ,复制命令按钮Command1
简单控件不能同名,控件数组内的元素是同名的
*
可视化编程环境
对象的排列
多个对象的操作:按住Ctrl键或Shift键,依次点选,以实心控制柄包围的对象作为排列的标准。
平面排列:选择“格式” / “对齐”命令 ,从子菜单选用左对齐、右对齐、顶端对齐等各种对齐方式。
前后叠放:选择“格式” / “顺序”命令,从子菜单选用置前、置后。
*
可视化编程环境
网格的使用