VB教程 全套课件 vb-8

合集下载

《VB程序设计教程》PPT课件(全)(2024)

《VB程序设计教程》PPT课件(全)(2024)
窗体的方法与事件
详细讲解窗体的常用方法,如显示窗体、隐藏窗体等,以及窗体 的事件,如加载事件、卸载事件等。
窗体的布局与风格
探讨如何合理规划窗体的布局,以及如何通过设置窗体的风格来 美化界面。
18
控件的使用与布局
常用控件介绍
介绍VB中常用的控件,如文本框、标签、按钮、列表框等,以及它们的属性和事件。
2024/1/26
Web应用程序开发
通过可以开发 Web应用程 序。
多媒体应用开发
利用VB可以开发多媒体应用程序,如音频、 视频处理等。
6
02
VB编程基础
2024/1/26
7
数据类型与变量
数值型
Integer、Long、Single、Double等
字符串型
String
2024/1/26
36
THANKS
感谢观看
2024/1/26
37
《VB程序设计教程》 PPT课件(全)
2024/1/26
1
2024/1/26
目录
• VB程序设计概述 • VB编程基础 • VB界面设计 • VB高级编程技术 • 数据库编程技术 • 网络编程技术 • VB程序调试与优化
2
01
VB程序设计概述
2024/1/26
3
VB的发展历史
1991年,微软公司推出Visual Basic 1.0,标志着 VB的诞生。
2024/1/26
套接字编程
使用Winsock控件进行套接字编程, 包括创建套接字、绑定地址和端口、 监听连接、发送和接收数据等步骤。
错误处理与调试
网络通信编程中需要考虑错误处理和 调试问题,如处理网络断开、数据丢 失等异常情况,以及使用日志记录和 调试工具进行问题排查。

vb8

vb8
2、Value Max之间)。
25
---重要属性
滑块所处当前位置 所代表的值(在Min和
8.3 滚动条和Slider控件
3、Max:最大值 -32,768~32,767
4、Min:最小值 -32,768~32,767 5、SmallChange 6、LargeChange (默认值:1) (默认值:1) 最小变动值,单击箭头时移动的增量值。 最大变动值,单击空白处时移动的增量值
lblClock.Caption = Time$
End Sub
33
8.4 时钟(Timer) ---定时器
利用Timer事件可制作简单动画。
例8-8 滚动字幕 例8-9 蝴蝶飞舞 (自己看)
34
8.4 时钟(Timer) ---定时器
方法(以蝴蝶飞舞为例):例8-9
1、先准备两张蝴蝶图像,尺寸相同,但翅膀 动作位置不同,一个展开,一个关闭;
水平滚动条
滑块
23
8.3 滚动条和Slider控件
(二) 移动滚动条上滚动块(滑块)的方
法,即改变滚动条的值的方法:
方法一:单击两端的三角钮
方法二:在滑块两侧单击 方法三:拖动滑块
24
8.3 滚动条和Slider控件 (三)属性
1、基本属性:Name、Width、Height、Top、
Left、Enabled、Visible、Index
5
8.1 单选钮、复选框和框架
三、单选钮和复选框的事件
Click
编程时可利用Value的值判断。
6
8.1 单选钮、复选框和框架
四、框架(Frame)
设Caption为 "字体" 框架
7

VB8

VB8

4
8.2.1 数组的声明
数组的定义(默认:数组下标从 开始 开始) 数组的定义(默认:数组下标从0开始)
一维数组: 一维数组: DIM <数组名 (上界) [AS <数据类型 数组名> 上界) 数据类型>] 数组名 数据类型 例如: 例如: DIM S(3) as integer 个元素: 有4个元素: S(0)、S(1)、 S(2)、 s(3) 个元素 、 、 、 二维数组:先行后列 二维数组: DIM <数组名 (上界 ,上界 ) [AS <数据类型 数组名> 上界1,上界2) 数据类型>] 数组名 数据类型 例如: 例如: DIM M(2,3) M(0,0) M(0,1) M(0,2) M(0,3) M(1,0) M(1,1) M(1,2) M(1,3) M(2,0) M(2,1) M(2,2) M(2,3)
那些用循环 来实现? 来实现?
12
打印输出Fibonacci数列的前 项 数列的前20项 打印输出 数列的前
【程序】参考程序如下: 程序】参考程序如下: Private Sub Form_Click() Dim n As Integer, fib(1 To 20) As Integer fib(1) = 1: fib(2) = 1 For n = 3 To 20 fib(n) = fib(n - 1) + fib(n - 2) Next For n = 1 To 20 Print fib(n); If n Mod 4 = 0 Then Print ‘每行只打印 个结果 每行只打印4个结果 每行只打印 Next End Sub
5
8.2.2 数组的类型
数组的类型 如果定义数组时指定了类型,则所有元素都是相同的类型。 如果定义数组时指定了类型,则所有元素都是相同的类型。 数组的下标和数组元素 数组中的每一个元素通过数组名和下标来引用。 数组中的每一个元素通过数组名和下标来引用。 例如: 的含义是? 例如: S(2) ; M(2,2) 的含义是? 数组的上下界 如果不指定下标的下界,一般默认值为0。 如果不指定下标的下界 , 一般默认值为 。 可以使用语句 option base 0|1 , 指定默认的下界是 或1。 指定默认的下界是0或 。 注意:该语句放在通用模块中。 注意:该语句放在通用模块中。 也可以在定义时指定上下界。 也可以在定义时指定上下界。 例如: 例如: DIM A(1 TO 7) 数组下标测试函数: 数组下标测试函数:(P119例8-2) 例 LBound(数组名[,维数序号]) 数组名[ 维数序号] 数组名 UBound(数组名[,维数序号]) 数组名[ 维数序号] 数组名

VB课件第8章

VB课件第8章
End If End Sub
“编辑”菜单下各下拉菜单的代码 :
Private Sub mnuSearch_Click()
Dim i As Integer, search As String, fn As String
search = InputBox("查找内容:", "查找") i = InStr(txtWord.Text, search) 第一次字符串位置
以下功能:
“剪切”:将所选中的内容剪切到剪贴板中 “复制”:将所选中的内容复制到剪贴板中 “粘贴”:将剪贴板中的内容粘贴到文本框中
“查找”:在输入框中输入要查找的字符串并 按“确定”按钮后,则第一个找到的反白显 示
“替换”:用所输入的字符串替换文本框中选 中的字符串
P275 【例8.2】在例8.1的基础上编写代码实现
Else mnuCut.Enabled = False mnuCopy.Enabled = False staMsg.Panels(1) = "没选中字符"
End If End Sub
Private Sub txtWord_Click() staMsg .Panels(1) = "没选中字符"
End Sub
End Sub
“编辑”菜单下各下拉菜单的代码 :
Private Sub Form_Load() Clipboard.Clear 清空剪贴板
End Sub
Private Sub mnuCut_Click() Clipboard.SetText txtWord.SelText 给剪贴板置数 txtWord.SelText = "" 删除所选文本 mnuPaste.Enabled = True

vb_ppt第08课

vb_ppt第08课
第8章 过 程
学习目标 本章要点 上机练习 习 题
学习目标
Visual Basic应用程序主要由过程组成。除了模块通 用声明部分的声明语句外,其他所有操作都在过程 中完成。Visual Basic应用程序在设计应用程序界面 (窗体)外的所有工作就是设计过程。在前面各章 多次使用了窗体和控件等对象的事件过程,对象事 件过程是Visual Basic预定义的,用户只能定义事件 过程代码,不能修改过程参数和返回值类型等。 Visual Basic中还包括各种自定义的子程序、函数、 属性和自定义事件等过程。本章将详细介绍子程序 和函数过程的定义和使用。
列表框 List2 中。要求使用过程完成排序。
产生随机数
对数据排序
上机练习
单击 按钮时如果还没有产生数据,则打开“无数据提示”
对话框提示。 单击 按钮退出应用程序。
无数据提示
习 题
(1)编写一个程序计算1!+2!+3!+…+N!,要 求定义一个函数来计算N!(光盘:\ chapter8\ 习题1.frm,光盘:\chapter8\习题1.vbp)。 (2)编写一个程序输出100~1000范围内的 全部素数,要求定义一个函数来判断一个数 是否为素数,是素数返回True,不是素数返 回False(光盘:\chapter8\习题2.frm,光盘: \chapter8\习题2.vbp)。
传值与传地址
在定义过程时,形参前使用ByVal指明传值, 用ByRef指明传地址。未使用ByVal或ByRef 关键字时,默认为传地址。 采用传值方式,过程对实参变量没有任何影 响。采用传地址方式,因为形参变量与实参 变量拥有相同的内存地址,在过程中修改形 参值时,实参变量的值也同时改变。

Visual Basic程序设计实用教程vb08(第8章 使用常用绘图方法)

Visual Basic程序设计实用教程vb08(第8章 使用常用绘图方法)
(2) 用户可以单击某个 图形按钮绘制出相 应图形和秒表的运 行图形。
8.3 绘图相关知识(1)
1、容器控件 要实现绘图就必须具备基本 条件,那就是要有一个绘 图的板。这与我们日常的 概念是一样的。比如一张 纸可以绘图,而一盆水就 不可绘图。VB提供了两 种可以绘图的板,
窗体-Form
图片坐标,或椭圆中心、圆弧中心的坐标; Radius:圆的半径; Start:选用时为画圆弧,表示圆弧的起始位置,用弧度表示; End:选用时为画圆弧,表示圆弧的终止位置,用弧度表示; Aspect:选用时为画椭圆,是椭圆X轴和Y轴的比例,当大于1时,长 半轴为Y轴,当小于1大于0时,长半轴为X轴;
8.7 实现鼠标绘任意图形(2)
应用鼠标事件完成任意绘图的操作,鼠标事件对 应的操作如下:
MouseDow n (鼠标压下) MouseMove (鼠标移动)
启动绘图,取 得当前坐标
判断是否绘图, 是绘制首尾相 接的线条
MouseUp (鼠标抬起)
停止绘图
8.8 图形方法应用举例(1)
按钮“画圆”代 码
8.3绘图相关知识
控件坐标和大小: 控件的位置属性: Left 和 Top ,指定控件左 上角的坐标值; 控件尺寸大小的属性: Height和 Width ,指定控 件右下角的坐标值, 实际上是控件的高度 和宽度。
(0,0) 控件
X轴
Y轴
控件坐标图
8.4 画线的方法Line
语句格式为:
Object.Line [step](x1,y1)-(x2,y2),[Color],[B][F]
语句示例: (在Form1上画图) 画圆: Form1.Circle (1000, 1000), 400, vbRed 画椭圆: Form1.Circle (1000, 1000), 400, vbRed, , , 1.5

VB8

VB8

14
中国药科大学 计算机教研室
通用过程

Visual Basic 程序设计
完成某一特定功能的程序段
——通用过程(自定义)

必须显式调用方可执行; 分为:
公有过程(Public) 私有过程(Private)
15
中国药科大学 计算机教研室
1

通用Sub过程的定义
Visual Basic 程序设计
If a(i) < min Then min = a(i)
Next i
End Sub
25
中国药科大学 计算机教研室
Function 过程
Visual Basic 程序设计
Function过程的特点是返回一个值,因此我们通常也称之 为自定义函数。通常我们利用Function过程得到一个数值或一个 字符串或一个逻辑值。 函数返回值的类型 [格式]:
基本思想:将一个大的程序按功能分割成一些小模块
各模块相对独立、功能单一、结构清晰、接口简单 控制了程序设计的复杂性
提高元件的可靠性
缩短开发周期 避免程序开发的重复劳动 易于维护和功能扩充
开发方法:
自上向下,逐步分解,分而治之
中国药科大学 计算机教研室
4
Visual Basic 程序设计
[一般形式]: [Private|Public] [static] Sub <过程名>([<参数列表>]) <过程体> End Sub
[说明]:
(1) 以Sub开头,End Sub结束,,中间是过程体——包括变量声 明和语句块;
(2) 以Private为前缀的过程是模块级的,以Public为前缀的过 程是应用程序级的,缺省默认是Public;

VB程序设计课件第8讲 For循环

VB程序设计课件第8讲 For循环

14
Dim F1&, F2&, F3&, i% F1 = 1: F2 = 1 Label1.Text = F1 & F2 For i = 3 To 30 F3 = F1 + F2 Label1.Text &= F3
If i Mod 4 = 0 Then Label1.Text &= vbCrLf 每行4 每行4个
F1 = F2 : F2 = F3 Next
'用新值代替旧值
15
内容小结
循环次数, 1.For 循环次数,循环变量保留退出时的值 t、 2. 累加 s = s + t、连乘 s = s * t 3. 递推法的递推关系
16
3
For
循环变量 = 初值 语句块 [Exit For] 语句块 [循环变量 循环变量] [循环变量]
to
终值
步长] [Step 步长]
循环体
(步长=1时,可省略) 步长=1时 可省略) =1
Next
步长
>0 <0 =0
初值<终值 初值< 初值> 初值>终值 死循环
循环次数 = Int(( 终值 - 初值 )/ 步长 + 1)
11
【例】 S = 100! 算法: 算法: 初始化: 1. 初始化:定义变量 s 存放连乘积 输入: 2. 输入:循环体外置初值 s = 1 3. 处理:For 1 To 100 ,s = s * i 处理: 输出: 4. 输出:s 连乘是通过连乘性语句: 连乘是通过连乘性语句:s = s * i 实现的 s = 1可否放在循环体内? 1可否放在循环体内? 可否放在循环体内
9
3. 常用算法 累加: 1. 累加:在原有和的基础上每次加一个数 S = 1 + 2 + 3 + … + 100 连乘: 2. 连乘:在原有积的基础上每次乘一个数 100! S = 100!

VB8

VB8
19 VB程序设计与数据库应用
item
index
应用实例
20
VB程序设计与数据库应用
Private Sub CmdAdd_Click() List1.AddItem Text1 List2.AddItem Text2 If Option1.Value = True Then List3.AddItem "男" 男 Else List3.AddItem "女" 女 End If List4.AddItem Text3 Text1.Text = "" Text2.Text = "" Text3.Text = "" Option1.Value = True '默认值 默认值 Text1.SetFocus End Sub
13
8.2.3 单选按钮和复选框 单选按钮和复选框
复选框(CheckBox)又称检查框, 复选框(CheckBox)又称检查框,一般用于表示状 选中和没有选中) 态(选中和没有选中)。 在工具箱中, 在工具箱中,其图标样式为 1.Alignment 属性 2.Value 属性
0-未选定 1-选定 2-灰色 另外:设置Enabled属性为flase,也可以使得它为灰色 Enabled属性为flase,也可以使得它为灰色 另外:设置Enabled属性为flase,
2
VB程序设计与数据库应用
8.2.1 文本框
3.MultiLine 属性--多行编辑 属性-- --多行编辑 4.PassWordChar 属性 --文本框的特代符 --文本框的特代符 5.ScrollBars 属性 --滚动条 --滚动条 6.SelLength 属性 --选中字符串的长度 --选中字符串的长度 7.SelStart 属性 --选择文本的起始位置 --选择文本的起始位置 8.SelText 属性 --选中的字符串 --选中的字符串 9.Text 属性 --字符型 --字符型

vb8(向阳教学)

vb8(向阳教学)
基础教学
说明
控件事件过程名由控件名、下划线和事件名组成。 组成控件事件过程名的控件名必须与窗体中某个 控件相匹配,否则Visual Basic将认为它是一个 通用过程; 控件事件过程也是私有过程,属于包含它的窗体 模块。 例如:在窗体中设置了一个名为Cmdend的命令按 钮控件,它的对应事件过程如下: Private Sub Cmdend_Click()
基础教学
Private | Public选项
以Private为前缀的Sub过程是模块级的 (私有的)过程,只能被本模块内的事件过 程或其它过程调用。以Public为前缀的 Sub过程是应用程序级的(公有的或全局的) 过程,在应用程序的任何模块中都可以调 用它。若缺省 Private | public选项, 则系统默认值为Public。若在一个窗体模 块调用另一个窗体模块中的公有过程时, 必须以那个窗体名字作为该公有过程名的 前缀,即以某窗体名.公有过程名的形式 调用公有过程
基础教学
窗体各事件的发生次序
建立窗体 装入内存
New关键 字或VB 自动建立
Load 语句
窗体被激活
Initialize
Load Activate 所触发的事件
基础教学
定义控件事件过程
控件事件过程的一般形式是: Private Sub 控件名__事件名([参数列表]) 〔局部变量和常数声明〕
语句块 End Sub 说明
基础教学
Static选项
Static选项:Static指定过程中的局部变 量为“静态”变量
基础教学
Sub关键字,过程名
Sub 过程以Sub语句开头,结束于End Sub 语句。在Sub和End Sub之间是描述过程操 作的语句块,称为子程序体或过程体。在 Sub语句之后,是过程的声明段,可以用 Dim或Static语句声明过程的局部变量和 常量 过程名的命名规则与变量命名规则相同。 在同一个模块中,过程名必须唯一。过程 名不能与模块级变量同名,也不能与调用 该过程的调用程序中的局部量同名

vb-8

vb-8
功能:从指定的文件中读取数据项,存放到变量列表的对
应变量中。
说明:
将逗号空格或换行符作为数据项的分隔符,变量的
数据类型要与数据项的类型一致
Input
#语句一般读取由 Write #语句写入到文件中的数据
方法2:Line Input #<文件号>,字符型变量
功能:从文件中读取一行字符,直到遇到回车符)或回车换行
记录长度默认为128,可以使用Len函数求得。 说明:
(2) 关闭随机文件
同顺序文件
随机文件打开后
既能读也能写
2. 随机文件的读写操作
(1) 写操作
Put <[#]文件号>,[记录号],<变量>
功能:将变量的值写入文件中指定的记录位置上; 省略记录号时,默认为记录指针所指向的记录。
自定义类型
本章目录
分隔符,给字符串添加双引号,保留数据类型。
方法2:Print #<文件号>, [输出列表]
功能:将输出列表中表达式的值依次写入指定的文件。
不保留数据类型。
说明:输出列表参数的设置格式与print
方法相同
例: 利用Print 和Write 语句把数据写入文件
4. 读顺序文件
方法1:Input #<文件号>,<变量列表>
例如:
Close #1 Close #1,#2 Close '关闭文件号为1 的文件 '关闭文件号为1和2是两个文件 '关闭所有文件
3. 顺序文件的写操作
方法1:Write #<文件号>,[输出列表]
功能:将输出列表中表达式的值依次写入指定的文件。
说明:向文件中写入数据时,系统会自的路径

VB程序设计(全套) ppt课件

VB程序设计(全套)  ppt课件
Visual Basic 程序设计简明教程
第一章 Visual Basic程序设计概述(2)
第二章 VB简单的程序设计(6)
第三章 VB语言基础(4)
第四章 基本的控制结构(8)
第五章 数组(5)
第六章 过程(4)
第七章 常用控件(2)
第八章 界面设计(2)
第九章 文件(2)
第十章 图形(1)
第十一章 数据库技术(自学)
14
上一页
PPT课件
下一页
1.4.1 窗体窗口
本章目录
窗体是建立VB应用程序的主要部分,用户通过与窗体上 的控制部件交互可得到结果。每个窗体窗口必须有一个 惟 一 的 窗 体 名 字 , 建 立 窗 体 时 默 认 名 为 Form1 、
Form2…… 在设计状态的窗体由网格点构成,方便用户对控件的定 位,网格点间距可以通过工具|选项命令,在通用标签的 窗体设置网格中输入宽度和高度来改变; 运行时可通过属性控制窗体的可见性(窗体的网格始终不 显示)。 一个应用程序至少有一个窗体窗口,用户可在应用程序 中拥有多个窗体窗口。
在VB中,工具箱上的可视图标是VB系统设计好的标准控件 类。通过将控件类实例化,可以得到真正的控件对象,也就是 当在窗体上画一个控件时,就将类转换为对象,即创建了一个 控件对象,简称为控件。
22
上一页
下一页
PPT课件
本章目录
例:工具箱内的TextBox是类,它确定了TextBox的属性、方 法和事件。窗体上显示的是两个Text对象 。
选“否” 删除:选中对象,按DEL键
24
PPT课件
2.1.2 对象的属性、事件和方法 本章目录
属性、事件和方法构成了对象的三要素。 1. 属性 属 性 保 存 对 象 中 的 数 据 。 例 如 , 控 件 名 称 (Name) 、 标 题 (Caption)、颜色(Color)、字体(FontName)等属性决定了对象 展现给用户的界面具有什么样的外观及功能。 可以通过以下两种方法设置对象的属性: 1) 在设计阶段利用属性窗口直接设置对象的属性值 2) 在程序运行时间通过语句 对象名.属性名=属性值 实现

Visual Basic 程序设计VB8

Visual Basic 程序设计VB8

SUB 过程
自定义过程与事件过程的区别: 1、从结构形式上看,事件过程名是由控件(对象)名 和事件名连接而成,而自定义过程的名称是由用户起 的一个任意的合法标识符; 2、从启动的机制上看,事件过程是由事件触发,而自 定义过程是由另外的过程来调用运行。 如何建立SUB过程? 方法1 选模块---工具菜单中的添加过程 方法2 工程菜单中的添加模块---模块代码窗口键入过 程的名字。
应用程序 工程文件( .vbp)
窗体模块 (.frm)文件
类模块 (.cls)文件
标准模块 (.bas)文件
函数过程
子过程
事件过程子ຫໍສະໝຸດ 程函数过程SUB 过程
SUB 过程的建立 1、定义 [static][private][public]sub 过程名[(参数表列)] 语句块 [exit sub] [语句块] End sub 过程名前缀是过程的性质,过程不能嵌套 参数表列是形参,格式是: [byval]变量名[()][as 数据类型]
过程与变量的作用域
3、工程级(项目级、全局)变量 在任一文件中,各过程之外,用public语句定义的变 量,作用域为整个工程或整个项目
窗体参数与控件参数
VB可用对象(窗体和控件)作为过程的参数,其类型 是control,(或form) 创建的对象作为实际参数,以地址调用方式 传递给过程,在过程种可以修改对象的属性,使用对 象的方法。 Private Sub fontout(t1 As Control, t2 As Control) t1.FontSize = 24 Private Sub Form_Load() Private Sub Form_Click() t1.Font = "宋体" Text1.Text = "欢迎使用" fontout Text1, Text2 t2.FontSize = 36 Text2.Text = "Visual Basic End Sub t2.Font = "隶书" 6.0" t2.FontItalic = TrueEnd Sub End Sub
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3. 设置启动窗体
“工程/属性” “启动对象”
设置启动对象
4. 窗体语句 (1)Load语句:装入窗体到内存但没有显示窗体 形式: Load 窗体名称 (2)Unload语句:从内存删除窗体 形式: Unload 窗体名称
5. 窗体方法 (1)Show方法:显示一个窗体(当窗体没有Load,自动Load) [窗体名称].Show [模式] 0 - Modal:关闭才能对其它窗体进行操作。 1 - Modeless,可以对其它窗体进行操作。 (2) Hide方法:隐藏窗体,没有Unload删除 [窗体名称.] Hide 6.不同窗体间数据的存取 (1)存取控件的属性 另一窗体名.控件名.属性 (2)存取变量的值 另一窗体名.全局变量名
性能 0只能用鼠标左键触发弹出菜单; 2:能用鼠标左、右键键触发弹出菜单;
8.3 多重窗体和多文档窗体
一、多重窗体
1.添加窗体 “工程|添加窗体” 新建 现存 添加“现存”窗体时要注意: 防止多个窗体的name相同而不能添加; 添加的窗体实际是将其它工程中已有的窗体加入,多个工程共享窗体; 通过“另存为”命令以不同的窗体文件名保存,断开共享。 2. 保存窗体 一个工程中有多个窗体,应分别取不同的文件名保存在磁盘上,VBP工程文件 中记录了该工程的所有窗体文件名。
三、 弹出菜单(快捷菜单)
显示在窗体的浮动菜单,操作时使用右键,菜单与鼠标位置有关。设计与普通菜单,仅 该菜单名不可显示;要显示时使用PopupMenu方法弹出菜单。 形式: [对象.]PopupMenu 菜单名, 标志, x, y 标志,表示弹出的位置和触发的键 位置 0:X 位置确定弹出菜单的左边界 4:弹出菜单以X为中心 8: X 位置确定弹出菜单的右边界 位置与性能是加的关系。 弹出菜单示例
Style=1
Style=2
三、 响应ToolBar控件事件
ToolBar控件常用的事件有两个:ButtonClick和ButtonMenuClick。前者对按钮样式为0-2, 后者对样式为5的菜单按钮。
(1)用索引Index确定按钮
(2)用关键字Key确定按钮
Private Sub Toolbar1_ButtonClick(Byval Button As ComctlLib.Button) Select Case Button.Index Case 1 FileNewProc Select Case Button.Key Case 2 Case "TNew" FileOpenProc FileNewProc …… End Select Case "TOpen" End Sub FileOpenProc
第八章 界面设计(3学时)
8.1 通用对话框
8.2 菜单设计
8.3 多重窗体和多文档界面
8.4 工具栏和状态栏 8.5 RichTextBox控件 8.6 应用程序向导
8.1 通用对话框(CommonDialog)
通用对话框添加到工具箱 工程/部件 打开通用对话框:
通用对话框的类型 打开(Open) 另存为(Save As) 颜色(Color) 字体(Font) 打印机(Printer) 和帮助(Help) Action 1 2 3 4 5 6 方法 ShowOpen ShowSave ShowColor ShowFont ShowPrinter ShowHelp
1. “打开”文件对话框
DialogTiltle FileName DefaultExt FilterIndex
InitDir
Filter
属性 FileName:包含路径 FileTitle:不包含路径 Filter:例如, Documents(*.DOC)|*.DOC|Text Files(*.TXT)|*.txt|All Files|*.* FilterIndex:决定在文件类型列表框中显示第几组类型的文件。 InitDir:初始化路径
RichTextBox控件可以输入和编辑文本,还可以实现多种文字格式、段落等的设置,还 可以插入图形的功能,可真正构成一个象Word一样的字处理软件。 选择“Microsoft Rich TextBox Controls 6.0”将控件添加到工具箱。
例8.1中“字体...”按钮的事件过程
5. “打印”对话框 属性 FromPage:起始页号 ToPage:终止页号 Copies:打印份数 如果打印驱动程序不支持多份打印,该属性有可能始终返回 1。 例8.1中“打印...”按钮的事件过程 6. “帮助”对话框 帮助文件需要用其它的工具制作,如Microsoft Windows Help Compiler。 例8.5 属性 HelpCommand:在线Help帮助类型 HelpFile:Help文件的路径及其名称 HelpKey:在帮助窗口显示由该帮助关键字指定的帮助信息。
例8.1 简单的文本编辑程序,当按“打开”按钮,在“打开”对话框按“取消”按 钮,显示有关信息。
Open CommonDialog1.filename For Input As #1 Do While Not EOF(1) Line Input #1, inputdata txtNoteEdit.Text = txtNoteEdit.Text + inputdata + _ Chr(13) + Chr(10) Loop Close #1
2. “另存为”对话框 没有提供真正的存储文件操作,仍需要编程完成储存操作。 属性 DefaultExt:缺省扩展名 例8.1中“另存为...”按钮的事件过程 3. “颜色”对话框 属性 Color:返回或设置选定的颜色。 例8.1中“颜色...”按钮的事件过程
4. “字体”对话框
FontName
例输入和计算学习成绩。
模块: Public MATH As Single Public PHYSICS As Single Public CHEMISTRY As Single Public CHINESE As Single Public ENGLISH As Single
二、 多文档界面(MDI) 引例8.8
2. MDI窗体与子窗体的交互 (1)活动子窗体和活动控件 MDI窗体的两个属性:ActiveForm 和ActiveControl 例将子窗体的文本框中所选文本复制到剪贴板上: ClipBoard.SetText frmMDI.ActiveForm.ActiveControl.SelText (2)显示MDI窗体及其子窗体 显示任何窗体的方法为show,还有有关规则: (1)加载子窗体时,其父窗体会自动加载并显示;反之则无。
8.2 菜单的设计
菜单形式:
主菜单条 菜 单 项 子菜单名
主菜单名 快捷键 热键
子菜单标记
分隔线
一、菜单编辑器的使用
工具/菜单编辑器(CTRL+E) 窗体上快显菜单/菜单编辑器 常用属性: 1. 标题(Caption) 热键:前面加& 菜单项属性 操作按钮 菜单列 表框 2. 名称(Name)文本框 分隔符也应有名称。 3. 快捷键(Shortcut) 菜单名没有快捷键 4. 复选(Checked)检查框 TRUE 有 5. 有效(Enabled)检查框 6. 可见(Visible)检查框
一、在ImageList控件中添加图象
ImageList控件不单独使用,专门为其它控件提供图像库.
索引(Index)、 关键字(Key) 在ToolBar中引用 图象文件的扩展名 为: .ico、.bmp、.gi f、.jpg等
二、在ToolBar控件中添加按钮
1.为工具栏连接图象
ToolBar与 ImageList的连接
常数 vbCascade vbTileHorizontal vbTileVertical vbArrangeIcons
值 0 1 2 3
描述 层叠所有非最小化 水平平铺所有非最小化 垂直平铺所有非最小化 重排最小化
8.4工具栏和状态栏
“Microsoft Windows Common Controls 6.0”将控件添加到工具箱, 通过ToolBar、ImageList组合使用建立工具栏,步骤: 1.在ImageList控件中添加所需的图象 2.在ToolBar控件中创建Button对象。 3.在ButtonClick事件中用Select Case语句对各按钮进行相应的编程。
Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu EditMenu, vbPopupMenuCenterAlign End Sub
示例 8.6 建立一个有菜单功能的文本编辑器。
二、 菜单项增减
在程序运行时,菜单随时增减,如“文件”菜单能保留最近打开的文件数。 这同控件数组一样,使用菜单数组。 步骤: 1.在菜单设计时,加入一个菜单项,其Index为0(菜单数组), Visual为False。 2.在程序运行时,通过Load方法向菜单数组增加新的菜单项。 例8.7在8.6中的文件菜单中保留最近打开的文件清单。 同样,要删除所建立的菜单项,使用UnLoad方法向菜单数组减少菜单项。
工具栏样式
2.为工具栏增加按钮 索引(Index)、关键字(Key)每个按钮 的编号、标识, ButtonClick事件中引用;
样式(Style),共6种
图象(Image) ImageList对象中的图 象,值可以是Key或Index
除菜单按钮(5)外的5种样式
Style=0
Style=3
Style=4
1. 创建和设计MDI窗体及其子窗体
(1) 创建和设计MDI窗体
创建: “工程/添加MDI窗体”命令
相关文档
最新文档