《第2章 Visual Basic程序设计基础》由会员分享,可在线阅读,更多相关《第2章 Visual Basic程序设计基础(44页珍藏版)》请在金锄头文库上搜索。
1、第2章 Visual Basic 程序设计基础Visual BasicVisual Basic程序设计及应用程序设计及应用第2章 Visual Basic 程序设计基础v2.1 程序设计概述v2.2 结构化程序设计基础v2.3 可视化编程的基础 *2.1程序设计概述v 程序程序(Program)是计算机的一组指令,经过编译和执行,计 算机才可以完成一个具体的任务。v 程序设计语言程序设计语言(Programming Language):是用于编写计算机 程序的语言。语言的基础是一组记号和一组规则。根据规则 由记号构成的记号串的总体就是语言。在程序设计语言中, 这些记号串就是程序。*2.1程序设
2、计概述v 程序设计简单地说,是设计程序的过程具体地说,是设计、编制、调试程序的方法和过程抽象地说,是数据(Data Structure)+ 算法(Algorithm)*2.1程序设计概述4. 一般程序设计步骤分析问题认真分析,研究给定条件,分析最后应达到的目标,找出解 决问题的规律,选择解题的方法,完成实际问题设计算法设计解题的方法和具体步骤编写程序根据得到的算法,用一种高级语言编写出源程序并通过测试对源程序进行编辑、编译和连接运行程序,分析结果*2.2 结构化程序设计基础v 结构化程序设计的原则自顶向下逐步细化模块化设计限制使用GOTO语句v 结构化程序设计的三种基本结构顺序结构选择结构循环
3、结构*2.2 结构化程序设计基础*v 结构化程序设计算法的表示方式1. 流程图2.2 结构化程序设计基础*v 结构化程序设计算法的表示方式2. N-S图2.2 结构化程序设计基础*v 结构化程序设计算法的表示方式3. 伪码表示 一种用接近高级语言的代码描述程序设计的结构 例如:VB语言分支结构:If 条件描述 Then 条件满足时的计算过程 Else 条件不能满足时的计算过程End If 例如:VB语言循环结构: While(循环执行的逻辑条件描述)条件满足时的执行过程Wend 2.3 可视化编程的基础 *窗体对象图片框对象文本框对象命令按钮对象VB系统中的常用对象2.3.1 对象窗体和控件就
4、是预定义对象2.3 可视化编程的基础 2.3.2 对象的属性(Properties) v 属性用来表示对象的特征,每一种对象所具有的属性不同。*2.3 可视化编程的基础 2.3.2 对象的属性(Properties) v 属性的设置1.在设计阶段,从属性窗口设置,只用于属性的初始化设置。先激活对象,再设置属性2.在运行阶段,由程序语句设置或改变属性的值。 对象名. 属性名 = 属性值v 注意:大多数属性都可以通过以上两种方式进行设置,但个别属性只能在属性窗口,或使用程序代码设置。*2.3 可视化编程的基础 2.3.3 对象的事件(Event)v 事件是由系统事先设定的,能为对象识别和响应的动作
5、。每一 种对象能识别的事件是不同的。*2.3 可视化编程的基础 2.3.3 对象的事件(Event)v 每个事件过程由一个相应的事件触发(驱动),而不是由主程 序调用。v 事件驱动过程,程序没有固定的执行顺序。*对象待命用户/系统触发事件对象对事件的响应 (程序代码)2.3 可视化编程的基础 2.3.4 对象的方法(Method)v 对象的方法就是对象要执行的动作。v 方法与事件过程类似,是一种特殊的过程和函数,它用于完成 某种特定功能而不能响应某个事件常见方法:Print(打印对象)、Show(显示窗体)、Move(移动)格式:对象名.方法名 参数1,参数2,每个方法完成某个功能,用户无法看
6、到其实现的步骤和细节, 更不能修改,用户能做的工作只是按照约定直接调用它们。*2.3 可视化编程的基础 2.3.5 窗体 *缺省窗体2.3 可视化编程的基础 1.窗体的主要属性Name(名称)属性Caption(标题)属性Left、Top (左、顶)属性(左上角为0,0, 单位为Twip缇)Width、Height(宽、高)属性Enabled(可用)属性Visible(可见)属性*2.3 可视化编程的基础 Font(字体)属性 Font字体本身又是一个对象,又有自己的属性,包括:字体类型(FontName)字体大小(FontSize)是否粗体(FontBold)是否斜体(FontItalic)
7、是否加下划线(FontUnderline)Form1.Font.Bold = TrueForm1.FontBold = True*等价于2.3 可视化编程的基础 ForeColor、 BackColor(前景色、背景色)属性其值是一个十六进制常数MaxButton、MinButton(最大、最小化按钮)属性ControlBox(控制框)属性BorderStyle属性值为1、2、3时才有效,只读属性11BorderStyle(边框类型)属性12Icon(图标)属性13Picture(图形)属性*2.3 可视化编程的基础 13Picture(图形)属性在程序代码中设置Picture属性:LoadP
8、icture函数对象名. Picture = LoadPicture(“文件名“)文件名用西文双撇号,不能是中文双引号文件名要带有路径。路径可以是绝对路径或相对路径Picture1.Picture = LoadPicture(“D:vb1.bmp“)Form1.Picture = LoadPicture(App.Path & “2.bmp“)指定文件名为空,表示卸载已载入的图形文件Form1.Picture = LoadPicture() Form1.Picture = LoadPicture(“)*【例2-2】 窗体的标题为“可视化实例”,字体为宋体三号字,背景色为“浅蓝色”。3个文本框,两
9、个命令按钮,试观察文本框Font属性与Command按钮Font属性。命令按钮1的Click事件为清除文本框1的内容,命令按钮2的Click事件为结束程序运行。当文本框1的内容发生变化时,将文本框1的内容变小写给文本框2;文本框1的内容变大写给文本框3。*2.3 可视化编程的基础 在VB工程1下新建窗体1添加控件:3个文本框,两个命令按钮,并设置属性*对象属性属性值 窗体Caption可视化实例 BackColor&H00FFC0C0& FontName宋体 FontSize三号 文本框1BackColor 文本框2BackColor 文本框3BackColor 命令按钮1Caption清除
10、命令按钮2Caption结束2.3 可视化编程的基础 编程策略 v Command1_Click事件 v Command2_Click事件 v Text1_Change事件编写代码Private Sub Command1_Click()Text1.Text = “ End SubPrivate Sub Command2_Click()End End Sub存盘运行*Private Sub Text1_Change()Text2.Text = LCase(Text1.Text)Text3.Text = UCase(Text1.Text) End Sub2.3 可视化编程的基础 2.3 可视化编程
11、的基础 2. 窗体的主要事件 Load事件窗体装载时发生Load事件,适用于启动应用程序时对属性和变 量的初始化Click、MouseDown、MouseUp等鼠标事件KeyPress、KeyDown 、KeyUp等键盘事件Unload、DblClick、Activate、Deactivate、Paint等事件 *【例2-3】观察窗体运行与结束时激发窗体各事件发生顺序。新建一个窗体,调用Debug对象,在立即窗口观察各事件运行顺 序,在代码窗口窗体的以下事件下键入如下代码:Private Sub Form_Activate()Debug.Print “窗体激活事件:Form_Activate“
12、 End SubPrivate Sub Form_Deactivate()Debug.Print “窗体关闭事件:Form_Deactivate“ End SubPrivate Sub Form_Paint()Debug.Print “窗体绘图事件:Form_Paint“ End Sub*2.3 可视化编程的基础 Private Sub Form_Load()Debug.Print “窗体调用事件:Form_load“ End SubPrivate Sub Form_Unload(Cancel As Integer)Debug.Print “窗体退出事件:Form_Unload“ End Su
13、bPrivate Sub Form_Resize()Debug.Print “窗体重新改变大小事件:Form_Resize“ End SubPrivate Sub Form_Terminate()Debug.Print “窗体终止事件:Form_Terminate“ End Sub*2.3 可视化编程的基础 v 窗体运行后,再关闭,则在立即窗口,显示如下信息: 窗体调用事件:Form_Load窗体重新改变大小事件:Form_Resize窗体激活事件:Form_Activate窗体绘图事件:Form_Paint窗体退出事件:Form_Unload窗体终止事件:Form_Terminate v 说
14、明事件发生顺序 可见窗体运行时系统事件是有先后顺序的,即只有窗体Load事 件发生后,才可发成Activate事件;当窗体被激活后,才可以 发生Paint事件。*2.3 可视化编程的基础 2.3 可视化编程的基础 3.窗体的主要方法 Move方法 对象名.Move Left ,Top ,Width ,Height Cls方法 对象名.Cls Print方法 对象名. Print 输出项1,输出项2,*2.3 可视化编程的基础 Show方法 v 显示Form对象。窗体名.Show 模式 1表示窗体状态为“模态”/ 0表示窗体状态为“非模态” Hide方法 v 隐藏Form对象,但不能使其卸载。窗
15、体名.Hide *2.3 可视化编程的基础 v 多重窗体的添加 / 删除1.添加窗体执行菜单命令“工程” / “添加窗体”在“工程资源窗口”内执行右键菜单命令“添加” / “添加 窗体”2.删除窗体激活该窗体,执行菜单命令“工程” / “移除窗体” 指向“工程资源窗口”欲删除的窗体名,执行右键菜单的“移 除窗体”命令*2.3 可视化编程的基础 v 多重窗体的切换(加载 / 卸载、隐藏 / 显示)1.Load语句将窗体加载到(只加载不显示)内存,可以引用窗体 中的控件和属性Load 窗体名1.Unload语句从内存卸载窗体Unload 窗体名1.Show方法兼有装入和显示窗体两种功能窗体名. S
16、how1.Hide方法使窗体隐藏,即不在屏幕上显示,但仍存在内存中窗体名. Hide*2.3 可视化编程的基础 v 多重窗体的启动通过菜单命令“工程” / “工程属性” 指定一个启动窗体; 若未指定,系统把设计时的第一个窗体作为启动窗体。v 多重窗体的存取1.每个窗体应分别保存到.frm的窗体文件中2.只须打开该工程的.vbp管理文件,则属于该工程的所有文件 (包括.frm和.bas文件)均装入内存v 多重窗体的编译无论一个工程包括多少窗体,都可以通过菜单命令“文件” / “生成 *.exe” 生成Windows中的可执行文件*【例2-4】新建一个VB工程,添加3个窗体 v 修改3个窗体Picture属性,用LoadPicture函数在代码窗口加载 三个图像文件1.bmp、2.bmp和3.bmp。 v 当单击窗体1时,窗体2显示,窗体1隐藏 当单击窗体2时,窗体3显示,窗体