VBNET讲义.docx
- 文档编号:11123856
- 上传时间:2023-02-25
- 格式:DOCX
- 页数:114
- 大小:57.43KB
VBNET讲义.docx
《VBNET讲义.docx》由会员分享,可在线阅读,更多相关《VBNET讲义.docx(114页珍藏版)》请在冰豆网上搜索。
VBNET讲义
第一章基本知识
1.1认识VB.NET
计算机语言的分类:
面向过程程序设计语言,QBASIC,c程序设计,等等。
面向对象程序设计语言,vb,,vf,vc,java,c#。
界面简介:
由几个常用窗口:
设计窗口:
控件的载体。
工具箱:
存放系统定义好的常用控件。
属性窗口:
设置控件的属性。
代码窗口:
编写程序。
它主要是在控件的事件过程中编写程序的。
输出窗口:
显示运行结果。
VB.NET软件开发的步骤:
1.拖入控件
2.设置控件的属性
3.编写程序代码
4.运行调试
5.保存项目
试作一个滚动字幕[实验报告1]。
程序为:
PublicClassForm1
PrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick
Label1.Left=Label1.Left+50
IfLabel1.Left>=Me.WidthThen
Label1.Left=-Label1.Width
EndIf
EndSub
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Timer1.Enabled=NotTimer1.Enabled
EndSub
EndClass
试作一个闪烁的灯泡[实验报告2]。
程序为:
PublicClassForm1
PrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick
PictureBox2.Visible=NotPictureBox2.Visible
EndSub
EndClass
程序中用到的属性:
Enabled—可用与否。
Interval--
Visible—可见与否。
Text—界面文字
控件的事件、方法、属性
事件:
加载在控件上的操作或动作。
方法:
控件完成的操作,它是由系统定义好的,直接用。
属性:
控件特征的描述。
1.2窗体与标签的应用
窗体的作用:
是其它控件的载体,窗体本身也是一个控件,所以它有自身的属性、方法、事件。
Text:
显示界面文字
Visible:
可见与否
Enabled:
可用与否
Font:
文字字体、字号等等
Forcolor:
前景颜色,如文字
Backcolor:
背景颜色
标签:
主要作用显示文字,常用属性为:
Text:
显示文字
语句:
程序结构:
1.3文本框与字符串
文本框的作用:
提供一个空间,可以输入内容或显示内容
除外,文本框还可以文字编辑器。
Text属性:
用以输入、输出,数据类型为,字符串型。
Multiline:
当为true时,内容可以多行显示。
常用事件:
change—内容变化时激发此事件。
应用:
试编程序,往第一个文本框中输入内容,然后在下面
标签中显示输入内容的大写、小写。
程序见,P13
程序为:
PublicClassForm1
PrivateSubTextBox1_TextChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTextBox1.TextChanged
Label1.Text=(TextBox1.Text).ToUpper
Label2.Text=(TextBox1.Text).ToLower
EndSub
EndClass
1.4常用数据类型
一、整型:
byteshortintegerlong
二、小数类型:
singledouble
三、字符型:
char表示单个字符。
四、字符串型:
string(string*6)
五、布尔型:
boolean只有两个值:
true,false
1.5运算符与表达式
表达式:
由运算符、运算量构成的式子。
如:
2*3.14*r
运算符:
连接符号,共有:
算术运算符:
+-*/\mod
字符串运算符:
+&
关系运算符:
>、>=、<、<=、=、<>
逻辑运算符:
notandor
运算量:
常数(量)、变量、函数(或属性值)。
常量:
Constpi=3.14
变量:
DimrAsInteger
Dimp,sAsSingle
实例:
任意输入圆的半径r,求圆的周长P与面积s。
[实验报告3]
程序见,输入圆的半径r求周长面积,程序为:
PublicClassForm1
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
DimrAsInteger
Dimp,sAsSingle
r=Val(TextBox1.Text)
p=2*3.14*r
s=3.14*r*r
TextBox2.Text=p
TextBox3.Text=s
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
End
EndSub
EndClass
1.6常用内部函数
数学函数:
此类函数在命名空间:
system.math中(如:
math.sqrt(m))
此命名空间是系统默认命名空间,即此空间中的函数可以直接使用。
字符串函数:
此类函数在命名空间:
microsoft.visualbasic中。
(如:
microsoft.visualbasic.len(s))
ucase=toupperlcase=tolower
Len(s)—求串长度;
串中取子串:
leftrithgmid
转换函数:
此类函数在命名空间:
microsoft.visualbasic中。
Val—把字符串(数字字符串)转换成数字。
Str—把数字转换成字符串
Int—取整,即去掉小数部分。
日期函数:
此类函数在命名空间:
microsoft.visualbasic中。
Now—取系统的时间与日期
Year--取系统日期中的年,monthday
Hour--取系统时间中的小时,minutesecond
说明:
命名空间可以试先指明,形式是:
imports命名空间,它必须放在所有程序的最前面。
随机函数:
Randmize—随机数种子
Rnd—产生随机数(0—1)
实例:
任意生产两个100以内的正整数,试编程求其和,
并对结果的对与错作出评定。
即加法器软件。
[实验报告4]
程序为:
PublicClassForm1
Dima,bAsInteger
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Randomize()
a=Int(Rnd()*100)
TextBox1.Text=a
b=Int(Rnd()*100)
TextBox2.Text=b
EndSub
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
End
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
If(Val(TextBox3.Text)=a+b)Then
TextBox4.Text="对了!
"
Else
TextBox4.Text="错了!
"
EndIf
EndSub
EndClass
试着做一个电子表,程序见,电子表。
实例:
试制作一个定时时钟[实验报告5]
程序见,定时时钟,程序为:
PublicClassForm1
Dimh,mAsInteger
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
End
EndSub
PrivateSubTimer1_Tick(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesTimer1.Tick
DimaAsDate
Dimb,c,dAsInteger
DimxAsString
a=Microsoft.VisualBasic.Now
b=Microsoft.VisualBasic.Hour(a)
c=Microsoft.VisualBasic.Minute(a)
d=Microsoft.VisualBasic.Second(a)
Label1.Text=b&":
"&c&":
"&d
If(h=bAndm=c)Then
Beep()
EndIf
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
h=8888
m=9999
EndSub
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
h=Val(TextBox1.Text)
m=Val(TextBox2.Text)
EndSub
EndClass
注意:
此程序中如果要运行某一软件,可以通过shell函数,来完成
作用:
在vb.nte中调用其它软件。
使用形式:
X=shell(软件名称及完整路径),如:
x=Shell("C:
\ProgramFiles\TTPlayer\TTPlayer.exe"+
""+"e:
\天竺少女.mp3",1)
1.7输入inputbox、输出函数msgbox
Inputbox
作用:
用于输入。
使用形式:
X=inputbox(”提示信息”,”标题信息”,1),如:
a=InputBox("请输入一个数:
","输入",1)
Msgbox
作用:
用于输出
使用形式:
msgbox(“输出信息”,对话框类型,”标题信息”),如:
MsgBox("你输入的数是:
"&a,18,"输出")
说明:
msgbox函数中,第二个参数可以是整数,如上面,也可以是像,
MsgBoxStyle.Question、MsgBoxStyle.YesNoCancel的参数。
应用实例:
任意产生一个3位正整数,分离出其个、十、百位数字并输出。
程序见,三位数的个十百位的分离,程序为:
ClassForm1
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Dima,a1,a2,a3AsInteger
Randomize()
a=100+Int(Rnd()*900)
a1=a\100
a2=(aMod100)\10
a3=(aMod100)Mod10
MsgBox("随机数为:
"&a)
MsgBox(Str(a)&"的个十百位数字为:
"&Chr(13)&Str(a3)&Chr(13)&Str(a2)&Chr(13)&Str(a1))
EndSub
EndClass
第2章程序控制
2.1关系运算符和逻辑运算
2.2条件语句
形式:
If<条件>then
<语句组>
Else
<语句组>
Endif
例如:
PublicClassForm1
Dima,bAsInteger
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Randomize()
a=Int(Rnd()*100)
b=Int(Rnd()*100)
TextBox1.Text=a
TextBox2.Text=b
If(a>=b)Then
TextBox3.Text=a
Else
TextBox3.Text=b
EndIf
EndSub
EndClass
复合的if语句:
如
Randomize()
a=Int(Rnd()*100)
b=Int(Rnd()*100)
c=Int(Rnd()*100)
TextBox1.Text=a
TextBox2.Text=b
TextBox3.Text=c
If(a>=b)Then
d=a
Else
d=b
EndIf
If(c>d)Then
TextBox4.Text=c
Else
TextBox4.Text=d
EndIf
2.3多分支条件语句
Selectcase语句
形式:
Selectcase<表达式>
Case值1
语句1
Case值2
语句2
……..
Caseelse
语句n+1
Endselect
作用:
适用于多分支的条件处理。
实例:
任意产生两个二位正整数,对其进行四则运算(+-*/).[实验报告6]
程序见,case语句四则运算,程序为:
PublicClassForm1
Dima,bAsInteger
PrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.Click
End
EndSub
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Randomize()
a=Int(Rnd()*30)+10
b=Int(Rnd()*30)+10
TextBox1.Text=a
TextBox3.Text=b
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
DimsAsDouble
SelectCase(TextBox2.Text)
Case"+"
TextBox4.Text=Str(a+b)
Case"-"
TextBox4.Text=Str(a-b)
Case"*"
TextBox4.Text=Str(a*b)
Case"/"
s=a/b
TextBox4.Text=s
CaseElse
TextBox4.Text="error!
"
EndSelect
EndSub
EndClass
两个函数:
IIF、CHOOSE
Iif—作用,相当于if..then…else
使用形式:
c=IIf(条件,a,b)
Choose—相当于selectcase.
使用形式:
s=Choose(f,"星期一","星期二","星期三","星期四","星期五","星期六","星期日")
其中f为整数,s的取值,取决于f,当f=1,s=星期一,当f=2
,s=星期二,以此类推。
应用见,iif与choose的应用,程序为:
PublicClassForm1
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Dima,b,cAsInteger
a=Val(TextBox1.Text)
b=Val(TextBox2.Text)
c=IIf(a>=b,a,b)
TextBox3.Text=c
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
DimfAsInteger
DimsAsString
f=Val(TextBox4.Text)
s=Choose(f,"星期一","星期二","星期三","星期四","星期五","星期六","星期日")
TextBox5.Text=s
EndSub
EndClass
实验报告小结:
滚动字幕、闪烁灯泡、由园的半径求周长面积
加法器、定时时钟、四则运算
循环结构程序设计:
作用:
专用于循环问题的处理。
形式:
do循环for循环
2.4do循环
一般形式:
形式一:
条件在前
Dowhile<条件>
<循环体>
Loop
形式二:
条件在后
DO
<循环体>
Loopwhile<条件>
应用实例:
求s=1+2+3+…+100[实验报告7]
程序见,1..100的和,程序为:
PublicClassForm1
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Dimi,sAsInteger
DoWhile(i<100)
i=i+1
s=s+i
Loop
TextBox1.Text=s
EndSub
EndClass
此程序中用了一个循环,即DO循环。
2.5FOR…NEXT循环。
形式为:
Fori=1To10
循环体
Next
使用特点:
适用于次数已知的循环。
应用实例:
任意产生十个(0,100)的
正整数并输出,求其中的最大数并输出。
[实验报告8]
程序见,for...next求10个数中的最大数,程序为:
PublicClassForm1
Dima(10),iAsInteger
DimsAsString
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
TextBox1.Text=""
Randomize()
Fori=1To10
a(i)=Int(Rnd()*100)
s=s+Str(a(i))+""
Next
TextBox1.Text=s
EndSub
PrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.Click
DimmaxAsInteger
max=a
(1)
Fori=1To10
Ifa(i)>maxThen
max=a(i)
EndIf
Next
TextBox2.Text=max
EndSub
EndClass
循环语句的退出:
Do…loop循环:
exitdo
For…next循环:
exitfor
循环结构的嵌套:
即多重循环。
应用实例:
1、对抛100次硬币,出现正反面的机率,开发一个模拟软件。
[实验报告9]
程序见,抛硬币模拟软件,程序为:
PublicClassForm1
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click
Dimface,backAsInteger
DimiAsInteger
Randomize()
Fori=1To100
IfRnd()<0.5Then
face=face+1
Else
back=back+1
EndIf
Next
TextBox1.Text="正面"+Str(face)+"次"
TextBox2.Text="反面"+Str(back)+"次"
EndSub
EndClass
2、任输入一串字符以“?
”结束,试统计其中数字出现的次数。
[实验报告10]
程序见,统计一串字符中数字出现的次数,程序为:
PublicClassForm1
PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBNET 讲义