vb 4
VB 第四章 菜单、工具栏、状态栏与对话框

下拉式菜单设计1.下拉式菜单的组成(如图4.2所示)(1)下拉式菜单由主菜单、主菜单项、子菜单等组成。
(2)子菜单可分为一级子菜单、二级子菜单直到五级子菜单。
(3)每级子菜单由菜单项、快捷键、分隔条、子菜单提示符等组成。
图4.2 下拉式菜单的组成①菜单项:所有子菜单的基本元素就是菜单项,每个菜单项代表一条命令或子菜单标题。
②分隔条:分隔条为一条横线,用于在子菜单中区分不同功能的菜单项组,使菜单项功能一目了然,并且方便操作。
③快捷键:为每个最底层的菜单项设置快捷键后,可以在不用鼠标操作菜单项的情况下,通过快捷键直接执行相应的命令。
④热键:热键是在鼠标失效时,为用户操作菜单项提供的按键选择,使用热键时,须与<Alt>键同时使用。
⑤子菜单提示符:如果某个菜单项后有子菜单,则在此菜单项的右边出现一个向右指示的小三角子菜单提示符。
2.菜单编辑器的启动执行菜单命令:工具| 菜单编辑器,即可打开菜单编辑器,如图4.3所示。
菜单编辑器分为上下两部分:上半部分用于设置菜单项的属性,下半部分用于显示用户设置的主菜单项与子菜单项内容。
图4.3 菜单编辑器3.菜单编辑器的使用方法(1)标题栏(Caption):输入菜单项的标题、设置热键与分隔条;①标题:直接输入标题内容,如“文件”。
②热键:在菜单项中某个字母前输入“&”后该字母将成为热键,如在图4.3的文件主菜单项中输入“文件(&F)”。
③分隔条:在标题框中键入一个连字符“-”即可。
(2)名称栏(Name):用于输入菜单项内部惟一标识符,如图4.3 “File”等,程序执行时不会显示名字栏内容。
注意:分隔符也要输入名称,且不能重复命名。
(3)快捷键下拉列表框(Shortcut Key):用于选择菜单项的快捷键,用鼠标单击列表框的下拉按钮,在列表框中可选择不同的快捷键。
(4)下一个按钮(Next):当用户将一个菜单项的各属性设置完后,单击“下一个”按键可新建一个菜单项或进入下一个菜单项。
VB第4章

数据输入输出
例1:MsgBox "请确认交易金额",33,"交易 确认"
例2:MsgBox "请确认交易金额",52,"交易 确认"
MsgBox按钮设置
分组
内部常数 VBOkOnly VBOkCancel VBAboutRetryIgnore VBYesNoCancel VBYesNo VBRetryCancel VBCritical
数据输入输出
1、标签和文本框 说明:标签利用它的Caption属性;文本框利 用它的Text属性。 例如: a%=Val(Text1) ’完成数据输入 c!=5/9*(a-32) Text2=c ’完成数据输出 Label1.Caption=3.14*r*r
数据输入输出
2、输入对话框InputBox函数 功能:打开一个对话框,等待用户输入,返回 字符串类型的输入值。 例: InputBox("请输入数值")
If 条件语句
2、双分支结构
形式: (1)If <表达式> Then <语句块1> Else <语句块2> End if
(2)If <表达式> Then
T 表达式 F
语句块 1
语句块 2
<语句1>
Else
<语句 2>
例:下列哪一段代码是正确的?
1) if a>1 then k=0 else k=1 2) if a>1 then k=0 end if 错误 3) if a>1 then k=0 else k=1
Visual Basic 程序设计教程
第四章 VB控制结构
4 VB基础控件篇.Command按钮控件

程序界面如图六:
图六
程序代码如下:
按钮一:
Private Sub CmdEnable_Click()
CmdFalse.Enabled = True
或者:按钮名称.Style = 0/1
只有当按钮的Style设置为Graphical类型时,按钮的Picture属性才起作用。本属性能在指定的按钮上添加图片。
可以在界面设置过程中为按钮指定图片,如图八:
图八
也可以在程序中进行指定,代码如下:
按钮名称.Picture = "图形文件所在的路径与文件名",例如:CmdPicture.Picture = "D:\image\01.jpg"
图四
4、Enabled(可用)属性:
本属性决定了控件是否可用的问题。当值为False,按钮在程序运行时呈灰色,不能响应用户的鼠标动作;只有当值为True,按钮才能使用。本属性可以在设置界面时予以指定,如图五:
图五
也可以在程序中修改,代码如下:按钮控件名称.Enabled = True/False
例一:
二、CommandButton的事件:
命令按钮最常用的事件是鼠标点击(Click)事件,当点击按钮时,犹如发出了一道命令,而这也正是“命令按钮”这个说法的由来。
图一
CommandButton控件在程序中主要作为按钮进行使用。默认的名称为CommandX(X为1、2、3,等等),命名规则为CmdX(X为用户自定义的名字,如CmdCopy、CmdPaste,等等)。
数字逻辑电路大全

G1
DI
1
EN
EN
1
DO
EN
G2
总线
A2
B2
EN2
D I / DO
A3
B3
E N3
总线 & G1 EN & G2 EN
& G3 EN
七、TTL集成逻辑门电路系列简介
1.74系列——为TTL集成电路的早期产品,属中速TTL器件。 2.74L系列——为低功耗TTL系列,又称LTTL系列。 3.74H系列——为高速TTL系列。 4.74S系列——为肖特基TTL系列,进一步提高了速度。如图示。
LABC
A
31
2T 2 截 止
Vo
B
T1
C
饱和
3 3 .6 V
1
2T 3
0 .3 V
R e2
截止
1 kΩ
二、TTL与非门的开关速度
1.TTL与非门提高工作速度的原理 (1)采用多发射极三极管加快了存储电荷的消散过程。
iB 1
R b1
4k Ω
+ VC C Rc2 1. 6kΩ
3 .6 V
A B C
1
1
3 .6 V
R e2
1K
+ VC C( + 5 V ) R c4 1 30 Ω
3
T2 4 截 止
D截止
Vo 3 0 .3 V 2T 3 饱和
(2)输入有低电平0.3V 时。
该发射结导通,VB1=1V。所以T2、T3都截止。由于T2截止,流过RC2的 电流较小,可以忽略,所以VB4≈VCC=5V ,使T4和D导通,则有:
C
+ VC C( + 5 V )
VB程序设计教程 第四版 第6章

a
10
执行过程体
x a
20 10
返回
返回
20 Integer a = = : y b10 的地址 b 10 = 20 : b 10 aCall = Swap 10 : y b 的地址 2(a, b 10 = b) 20 : 10 b Call a = Text Swap b
汉字的机内码最高位为1,Asc函数码值为小于0(补码)
西文字符的最高位为0,Asc函数求其码值为大于0
Function CountC%(ByVal s$) Dim i%, k% Dim c As Char For i = 1 To Len(s) c = Mid(s, i, 1) If Asc(c) < 0 Then k = k + 1 Next CountC = k End Function Sub Command1_Click() Dim c1% c1 = CountC(Text1.Text) 显示 Text1.Text 和 C 1 End Sub
Functioc Count%(st$) Dim i% Count = 0 i = InStr(st, “ the ") Do While (i > 0) Count = Count + 1 st = Mid(st, i + 1) i = InStr(st, “ the ") Loop VB 程序设计教程 End Function
Z←gcd
例6.2 设断点演示过程
调用形式:函数过程名([参数列表])
参数列表(称为实参或实元):必须与形参个数相同,位置与 类型一一对应。可以是同类型的常量、变量、表达式。
VB实验4MDI窗体及工具栏

Select Case Button.Index
Case 1 <要执行的代码>
Case 2 <要执行的代码>
…
End Select
End Sub
Visual Basic程序设计实验指导
第10页
二、预备知识
目的和要求 预备知识
上一页 下一页
Button.Index:表示工具栏按钮的索引,每个 按钮对应一个索引值,单击工具栏上的按钮返回 其按钮的索引值,根据索引值进入相应的Case分 支。例如,单击工具栏最左边的按钮, Button.Index值为1,进入Case 1进行事件处理。 当然,也可以用Button.Key来设置分支条件。
第4页
二、预备知识
目的和要求 预备知识
上一页 下一页 退出
图像列表控件是包含图像的集合,该集合中的
每个图像对象都可以通过其索引(Index)或关键
字(Key)属性被引用。图像列表控件不能独立使
用,只是作为一个便于向其他控件提供图像的资
料中心,相当于图像的仓库。Visual Basic中常
通过ToolBar 、TabStrip 、ImageCombo 等Windows
退出
Visual Basic程序设计实验指导
第17页
实验4-1
目的和要求 预备知识
上一页 下一页 退出
【实验步骤】 (1)界面设计 请参照图4-6所示的界面设计窗体。 (2)完善程序代码 (3)运行工程并保存文件 运行程序,单击菜单,操作子窗体,观察运行 结果,最后单击“保存”按钮将所有文件保存。
Visual Basic程序设计实验指导
第18页
实验4-2
目的和要求 预备知识
VB习题4

1、下列关于VB编码规则的叙述中,错误的是( )。
(1分)BA之间用逗号隔开CD上注释,以提高可读性2、在设计阶段,双击窗体上任一空白处,打开的窗口是( )。
(1分)A BC D3、窗体文件的扩展名是( )。
(1分)A BC D4、VB是一种面向( )的程序设计设计语言。
(1分)A BC D5、下列控件中,不能改变大小的是( )。
(1分)A BC D6、若要取消窗体的最小化功能,可通过设置( )的属性值为False来实现。
(1分)A BC D7、下列( )是文本框所具有的属性。
(1分)A BC D8、以下关于命令按钮的控件属性的描述中,不正确的是( b )。
(1分)A BC D9、要使一个标签透明且不具有边框,则应( )。
(1分)A BorderStyle 属性设置为B属性设置为C BorderStyle 属性设置为D属性设置为10、为使计时器控件每隔1秒产生一个计时器事件(Timer),则应将其Interval属性值设置为( )。
(1分)A BC D11、为了清除图片框内绘制的图形,应采用的正确方法是( d )。
(1分)A BCDPicture1.Picture=LoadPicture("")12、在设计一个倒计时标牌时,必须要使用的控件是( c )。
(1分)A BC D13、下列运算中,优先级最低的是( c )。
(1分)A BC D14、设a=6,b=-3,则以下表达式值为True的是( d)。
(1分)A BC D15、表达式25.28 Mod 6.99的值是( )。
(1分)A BC D16、语句x=123456.789已经被执行,输出时要求加千位分隔符,小数点后取2位有效数字,格式正确的是( )。
(1分)A BC D17、变量未赋值时,String型变量的值为( )。
(1分)A BC D18、设a=2,b=3,c=4,d=5,下列表达式3>2*b OR a=c AND b<>c OR c>d的值是( )。
VB-第4章-VB语言基础

注意:为了与字符串型常量相区分,所以用#将日期常量括起来
VB语言基础
13
业,精于勤,荒于嬉
业,精于勤,荒于嬉
(5)符号常量
常量在程序中也可以用符号表示 目的是为了…… 代表常量的符号称为“常量名” 常量名的命名规则是: 1、不超过255个字符 2、只能由字母、数字和下划线组成并且首字符必须是字母的字符串 3、常量中字母大小通杀(不区分大小写)。 比如: Const PI As single=3.14159 ‘声明了常量PI,代表3.14159,单精度型 Const MAX As Integer=&O144 ‘声明了常量MAX,代表八进制数144,整型 Const COUNT#=45.67 '声明了常量COUNT,代表45.67,双精度型
业,精于勤,荒于嬉
4、可以用(Const )语句来定义符号常量。 5、可以在常量的后面加上类型说明符以显示常量 的类型,可以用( $ )表示字符串型常量。 6、下列是合法的VB变量名的是(A) A:a2 B:2a C:int sum D:2*a 7、下列各项不是VB基本数据类型的是(A) A:Char B:String C:Integer D:Double
Private Sub Command1_Click() Dim liming As string End Sub Private Sub Command2_Click() Dim liming As string End Sub
VB语言基础
19
业,精于勤,荒于嬉
窗体/模块级变量
业,精于勤,荒于嬉
VB语言基础
10
业,精于勤,荒于嬉
业,精于勤,荒于嬉
3)理解数值的范围
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
编写一个计算正整数的阶乘K!的程序。 例:编写一个计算正整数的阶乘 !的程序。
分析
用一个For循环中的循环变量 表示 的变化范围,本例中K=10,i 表示K的变化范围 用一个 循环中的循环变量 i表示 的变化范围,本例中 , 变到10,在循环体中计算当前K值的阶乘 值的阶乘。 从1变到 ,在循环体中计算当前 值的阶乘。 变到
第四章
循环结构
1
教学内容
1. 掌握用不同的循环语句构造循环 2. 了解一些辅助控制语句 3. 掌握Timer控件和滚动条 控件和滚动条 掌握
2
引例
打印九九乘法表。 打印九九乘法表。
3
分析 在每一行中,显示两数相乘及其结果的操作重复 在每一行中, 九次,乘数j有规律地递增 每次增加1。可以用9 有规律地递增, 九次,乘数 有规律地递增,每次增加 。可以用 次循环来实现这个重复操作,这里用了For…Next语 次循环来实现这个重复操作,这里用了 语 同样,上述循环又被重复9次 即每循环一轮, 句。同样,上述循环又被重复9次,即每循环一轮, 被乘数i有规律地递增 所以用一个嵌套的循环, 有规律地递增1。 被乘数 有规律地递增 。所以用一个嵌套的循环, 由i控制输出 行,而在每一行中,j控制输出了 项。 控制输出9行 而在每一行中, 控制输出了9项 控制输出 控制输出了 步骤 1. 新建一个项目,取名为乘法表。 新建一个项目,取名为乘法表。 2. 在窗体上放置一个 在窗体上放置一个Lable控件,控件属性见表。 控件, 控件 控件属性见表。 3. 打开代码窗口。为窗体编写 打开代码窗口。 窗体编写 编写load事件编写代码。 事件编写代码。 事件编写代码
对象 TextBox TextBox TextBox Button Button
属性 Name Multiline ScrollBar Name Text
值 txtOutput True Vertical btnStart 开始
16
程序代码 Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnStart.Click Dim i As Integer Dim j As Integer Dim k As Integer Dim l As Integer Dim intSum As Integer = 0 Dim intNumber As Integer
11
例题: 例题:求出所有的水仙花数
定义: 定义: 如果一个三位数的个位数、 如果一个三位数的个位数、十 位数和百位数的立方和等于该 数自身, 则称该数为水仙花数。 数自身 则称该数为水仙花数。 算法: 算法: 对100~999范围内的每个整数 ~ 范围内的每个整数 一一检验其是否符合水仙花数 的定义
4
控件 Form Form Lable Lable
属性 name text name text
值 Form1 九九乘法表 lblList 空
5
程序代码
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim i, j, result As Integer result = 1 For i = 1 To 9 ‘ i循环控制输出 行,For…Next循环 循环控制输出9行 循环控制输出 循环 For j = 1 To 9 ‘ j循环控制每行输出 项,多重循环 循环控制每行输出9项 循环控制每行输出 result = i * j If result >= 10 Then ' if语句解决一位数和两位数能够对齐的问题。 语句解决一位数和两位数能够对齐的问题。 语句解决一位数和两位数能够对齐的问题 lblList.Text += i.ToString + "*" + j.ToString + "=" + result.ToString + " " Else lblList.Text += i.ToString + "*" + j.ToString + "=" + result.ToString + " " End If Next lblList.Text += vbCrLf ' 输出一个回车换行 Next End Sub
14
多重循环
多重循环(循环嵌套): 多重循环(循环嵌套): 一个循环体内包含另一个完整的循环结构。 一个循环体内包含另一个完整的循环结构。 例题:统计用1、 、 、 这四个数组成的所有四位数 这四个数组成的所有四位数。 例题:统计用 、2、3、4这四个数组成的所有四位数。 用四重循环来解决.每层循环的初值为1, 分析 用四重循环来解决.每层循环的初值为 ,终值为 4,总的循环次数就是所有四位数的个数。 ,总的循环次数就是所有四位数的个数。 步骤 1. 新建一个项目,取名为 新建一个项目,取名为FourNumber。 。 2. 在窗体上放置一个 在窗体上放置一个TextBox控件和 控件和Button控件。 控件。 控件和 控件 Textbox的ScrollBars属性设置为 属性设置为Vertical,添加一个 的 属性设置为 , 垂直滚动条, Multiline属性值为 垂直滚动条, 属性值为True 。 属性值为 3. 在窗体上单击右键,打开查看代码窗口。为 在窗体上单击右键,打开查看代码窗口。 15 Button的Click事件编写代码。 事件编写代码。 的 事件编写代码
6
循环语句
三种主要的循环语句: 三种主要的循环语句:
1. For…Next 2. While…End While 3. Do…Loop
7
For…Next循环 循环
语句格式: 语句格式:
For 循环变量 = 初值 To 终值 [ Step 步长 ] [ 语句块 ] [ Exit For ] [ 语句块 ] Next [ 循环变量 ]
12
水仙花数代码
Dim M,k1,k2,k3 As Integer TxtOutput.Clear() For M = 100 To 999 k1 = M \ 100 k2 = (M \ 10) Mod 10 K3 = M Mod 10
13
If M = k1^3 + K2^3 +K3^ 3 Then TxtOutput.Text += M.ToString() + " = " _ +K1.ToString() + "^3 + " + K2.ToString() _ + "^3 + " + K3.ToString() + "^3" + vbCrLf End If Next
ห้องสมุดไป่ตู้
说明: 说明:
循环变量的类型通常是 Integer。 。 步长: 循环变量的增量,初值小于终值为正 初值小于终值为正; 步长 循环变量的增量 初值小于终值为正;初值大于终值 为负;省略该项,步长的默认值为1 为负;省略该项,步长的默认值为 语句块亦被称为循环体 Exit For: 退出循环,执行 Next 语句后面的语句 退出循环,
20
Dim intCock As Integer Dim intHen As Integer Dim intChicken As Integer ' 当买 只、2只……19只公鸡时,可买母鸡和小鸡的情况都列出 当买1只 只 只公鸡时, 只公鸡时 For intCock = 1 To 19 For intHen = 1 To 33 - intCock intChicken = 100 - intCock - intHen If intCock * 5 + intHen * 3 + intChicken / 3 = 100 Then TxtOutput.Text += "Cock:" + intCock.ToString() + _ " Hen:" + intHen.ToString() + " Chicken:" _ + intChicken.ToString() + vbCrLf End If Next Next
9
对象 TextBox TextBox Button Button name text name text
属性 txtOutput 空 btnStart 开始
值
10
BtnStart按钮的 按钮的click事件代码 按钮的 事件代码
程序代码 Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnStart.Click Dim lngResult As Long Dim i As Integer lngResult = 1 For i = 1 To 10 lngResult *= i txtOutput.Text += i.ToString() + "!=" + lngResult.ToString() + vbCrLf Next End Sub
19
三个未知数,只有两个方程, 分析 三个未知数,只有两个方程,因此这是一个不定方程问 根据题意, , 分别为鸡翁 鸡母,鸡雏的数目, 分别为鸡翁, 题。根据题意,设x,y分别为鸡翁,鸡母,鸡雏的数目, 则可得如下方程: 则可得如下方程: 5x + 3y + z/3=100 / = x + y + z=100 z= 因为公鸡每只5钱,100钱最多买 只公鸡,而如果100钱全买 因为公鸡每只 钱 钱最多买20只公鸡,而如果 钱全买 钱最多买 只公鸡 了公鸡,就买不了母鸡和小鸡了,所以最多只能买19只公 了公鸡,就买不了母鸡和小鸡了,所以最多只能买 只公 同样100钱最多买 只母鸡。 钱最多买33只母鸡 鸡,同样 钱最多买 只母鸡。 步骤 1. 新建一个项目,取名为 新建一个项目,取名为HundredCock。 。 2. 在窗体上放置一个 在窗体上放置一个TextBox控件(name属性为 控件( 属性为txtOutput) 控件 属性为 ) 控件( 属性为btnStart)。运行结果见图。 )。运行结果见图 和Button控件(name属性为 控件 属性为 )。运行结果见图。 3. 在窗体上单击右键,打开查看代码窗口。为Button的Click 在窗体上单击右键,打开查看代码窗口。 的 事件编写代码。 事件编写代码。