1、授课记录任课教师:陈大春要求:一 不允许迟到(迟到算1个学时,旷到算2个学时),一个学期只允许10个学时,成绩记0分。二 上课不允许打电话,收短信。在不影响别人的情况下出去打电话。三 成绩:30分考勤+30分作业+40分考试四 机房规定(穿鞋套,不乱插拔电脑,禁止吃东西)第一讲VB课的特点:程序设计难点(英语、汉语)、下面动脑子,启蒙界面设计(简单)、程序设计(分支、循环、一维数组、过程)思想:看懂别人的程序模仿写一些简单的程序自己写一些简单的程序Visual(可视化的) basicToolboxGeneral常规的网络驱动器的映射Vbp保存过程:选择网络驱动器下选择文件名(最好以字母开头,后
2、跟字母或数字)注意:要存两次(第一次是frm文件,第二次是vbp文件,不用写文件的扩展名)选择no重新打开的时候,如果没有出现界面设计窗口时,双击资源管理器中form名*注意:不能再外部更改文件名。尤其是frm文件的名字,则将无法打开对应窗体文件。想改名:运行程序:尝试一:更改窗体(form)名字属性窗口的Caption编辑栏中填写文字。熟悉了vb编程的过程:界面设计(设计初的属性设置)-设计事件响应尝试二 设置背景图片设置picture属性只认识jpg或bmp文件第二讲(2012.2.29)pub 192.168.0.252一 窗体form通用属性:Name名称:不要随意改动,实际是窗体实例
3、的名称*Caption:控件显示的文字内容*height,width,top和left:控件实例的尺寸和位置*font字体 fontname,fontsize,fontbold,fontitalic,fontstrikethru,fontunderline*enable决定控件是否在运行的时候可用,有两个值:true真,false假*visible: visual vision决定控件在运行时是否可见*forecolor,backcolor:设置颜色forewardmousepointer,mouseicon:鼠标指针的形状default:默认的 arrow:箭头,cross:十字,I-bea
4、m:插入符,icon:图标,size:可变大小课堂练习:设置form1的标题为:同学的名字添加一个按钮command1,设置标题为:“运行”设置按钮的字体为:宋体,小二号,斜体,下划线。添加标签label,设置颜色为:前景色:红色,背景色:蓝色maxbutton,minbutton:窗体运行时是否显示最大,最小化按钮icon和controlbox设置窗体左上角控制菜单图标Borderstyle:边框的样式Fixed single:固定单边框(不能改大小)Fixed dialog:固定对话框Fixed toolwindow:固定的工具栏窗口Windowsstate:窗体的执行状态常见的事件:Cl
5、ick:单击的响应事件第三讲(2012.3.1)一标签label作用:起提示性的文字Backstyle:背景样式 style样式Transparent:透明Borderstyle:边框样式Alignment:对齐方式Autosize:自动调节大小二文本框textbox作用:用来为程序运行时数据输入。*Text:默认属性,编辑的文字,文本框当前文字内容Maxlength:最大长度,限制输入时的文字长度*Multiline:多行Text属性变成下拉框,输入一行后输入Ctrl+回车来换行Scrollbars:滚动条,只有在多行才有效Horizontal:横向,vertical:纵向*Password
6、char:设置密码显示文字,对多行无效的Locked:控制运行时的编辑状态,注意与enable属性的区别Selstart:选定文字的开始位置,设计状态下无效Sellength:选择文字的长度Seltext:选择文字的内容事件:Change,keypress,lostfocus焦点,setfocus三命令按钮command button*Style:样式Standard:标准的,graphical:图形的如果设置graphical属性后,应设置picture属性,一般装入bmp(位图文件)或ico文件(图标文件)第四讲(2012.3.7)一数据类型字节型Byte逻辑型 Boolean整型 Int
7、eger %长整型 Long &单精度 Single !双精度 Double #货币型 Currency 日期型 Date字符型 String $对象型 Object变体型 Variant二常量(1)整型数字%或&123 7856 -458长整型数用&加在后面,如32769&(2)浮点数分单精度数和双精度数有两种表示方式:小数形式和指数形式小数形式:3.14159 543.145 54. 54! 特殊:0.0 0. .0 0!指数形式:以e或E连接指数部分小数部分eE+/-指数部分25.3145e2 1.2345e+02 1.2345e-2*注意:指数部分不能带小数点,如1.23e2.3改变精
8、度:在后面加类型符!或#如:1.2345e2! 1.2345e2#(3)字符型用双引号括起来如”abce gad”注意:不要用中文双引号(4)逻辑型True 和 FalseTrue对应的是十六位的1,False对应的是十六位的0。*转换为整数时,True转换为-1,False转换为0。235+True等于234*把非逻辑型的整数转换为逻辑型:非0转换为True,0转换为False。(5)日期型用一对#括起来的。如:#2012-3-7# #2012/3/7# #2012-3-7 13:12:25# #2012-3-7 1:12:25PM#十二小时制后面是am或pm不可用的字符,如中文双引号三变量
9、运行过程中它的内容不断变化的量。以变量名操作。(1)命名规则必须以字母开头,由字母、数字或下划线组成,小于255个字符。如:abc,i1,ini1,v1,init_para。不能使用VB关键字。凡是字变蓝的。VB不区分大小写字母。Va和va,VA,vA相同。常量全部用大写字母表示。(2)声明declaration第一种 用dim语句显式声明变量最好使用此方法。Dim 变量列表 as 类型名Dim i as integer,x as singleDim i%,x!注意:以逗号隔开每一个变量,变量名与类型符间没有空格。Dim i,ji,j就成为变体类型。根据类型有不同的初值。字符型可以声明变长或定
10、长:Dim s as string等价与Dim s$Dim s as string*12 定长字符,长度12字符隐式声明,使用中直接用名称。类型都是变体型Variant。*注意:可以用Option Explicit强制显式声明变量。m是隐式变量,将出错练习:用print打印如下图案 print “*”* * * * *第五讲(2012.3.8)一常量进制常量八进制:数值前加&O,如:&O127=1*82+2*8+7*80=64+16+7=87&O15641& &O1594(错误,八进制没有9数字)十六进制:数值前加&H,如:&H5ae*符号常量,一般用大写标识形式:Const 常量名 As 类
11、型 = 表达式如:Const PI As Single = 3.1415926同:Const PI! = 3.1415926*注意:符号常量不能出现在赋值号的左边。系统常量以特定字符开头的符号,如:vb,xl,db二变量的使用使用赋值语句来改变变量的值。赋值语句:变量名=表达式如:Dim i%, a!, j&, b#, s$, d As Datei = 0a = 1.5j = 32769b = 123.45E+19s = fegadfd = #3/8/2012#Print i, a, j, b, s, d溢出overflow:超出存储能存的数的范围01111111+1=10000000=-1编
12、程:假设A,B两个瓶子,分别装入酱油和醋,编程借助C瓶将A,B瓶中酱油和醋交换。A=C,B=A,C=BPrivate Sub Command1_Click()Dim a$, b$, c$a = 酱油b = 醋c = aa = bb = cPrint a, bEnd Sub思考题:现有三个瓶子a,b,c,分别装“酱油”,“醋”,“水”,要求借助空瓶子d,将其交换为:“醋”,“水”,“酱油”。注意:赋值号有方向的,与等号区别。方向从右向左赋值。三运算符(1)算术运算符+ - * / Mod乘(*):双目操作符除(/):分母不为零,先乘除后加减(优先级高)例:a+b/2 =(a+b)/2, 错误:(
13、-b+1)/2a (分母少乘号*)(-b+1)/2*a(分母中乘号与除号同优先级,自左向右结合,实际上a是分子)=(-b+1)/2/aPrivate Sub Command1_Click()Dim a$, b$, c$a = 2b = 2c = (-b + 1) / (2 * a)Print cEnd Sub例1:设一个圆的半径r=3,求圆的周长和面积。Private Sub Command1_Click()Dim r!, l!, s!Const PI! = 3.14159r = 3l = 2 * PI * rs = PI * r * rPrint l, sEnd Sub课堂练习:设一个球的半
14、径r=3,求球的体积。设正四面体的边长a=3,求此四面体的表面积和体积。已知三角形三边a,b,c,用海伦公式求三角形面积。L半周长,sqrt(l(l-a)(l-b)(l-c)乘方整除:除的结果取整数部分,如:32 =1,12=0 13+13+13=0取模(余):5 mod 3 =2 3 mod 5=33/2 1 1 被除数,除数,商,余数。 余数=被除数-商*除数3+”12”=15第六讲(2012.3.13)字符串运算符两个运算符:&和+abc & qaddfabcqaddf123 + 234相当于123+234 =357如果有一个非数字字符,出错,如s1 = abcs3 = s1 + 123
15、直接连接字符串用&,s1 = abcs3 = s1 & 123*关系运算符= = = Like Is(1) 如果两边都是数值型,比的实数的大小。(2) 都是字符型的,比的是ASCII码,前后顺序。汉字以拼音顺序。Print 3 5, 2 3Print abc ABC 结果为FALSEPrint ABC1 ABC2*问题:变量x在(0,1)0x1错误的写法Dim x!x = 3Print 0 x 1结果为:TRUE无论x是什么值,0x的结果只有两个TRUE或FALSE,参加运算时TRUE是-1,FALSE是0,因此-1或0都是小于1的。优先级相同,自左向右结合。如:0x (0x)1运算结果只有T
16、RUE和FALSE。逻辑运算符:用于解决如0x1的问题。运算符:Not And Or XorNot:逻辑非,Not x:x为TRUE,结果为FALSE,否则为TRUE.And:逻辑与, x And y:x和y同时为TRUE时结果为TRUE,否则为FALSE。Or:逻辑或,x And y:x和y同时为FALSE时结果为FALSE,否则为TRUE。Xor:逻辑异或,x And y:x和y不同时结果为TRUE,否则为FALSE。x = -0.5Print 0 x Or x 结果为-3,按位取反。2 and True = 结果为2表达式由哪些组成的:常量、变量、数组元素、函数、运算符等组成。数值表达式
17、:(a+b)/2 l*(l-a)*(l-b)*(l-c)字符表达式:”abc” & ”123”a & (a3)关系表达式:a3 a5逻辑表达式:a0 And a字符运算符关系运算符逻辑运算符x=10 And x20xz Or yz And yzx Mod 5 =0 Or x Mod 7 =0 解释:x Mod 5 =0 意思是x能被5整除,即x是5的倍数。Dim x!x = 16Print x Mod 5 = 0 Or x Mod 7 = 0x0 And y0 Or x0 And y0第七讲(2012.3.14)(1) 数学函数带参数的函数使用:函数名(参数)三角函数:Sin,Cos,Tan,
18、参数是弧度指数函数:Exp 对数函数:Log,Log10开二次方:Sqr伪随机数:Rnd,产生0到1的随机数产生a,b的随机数,Rnd*(b-a)+a如:Dim a%, b%, s!a = 10b = 20s = Rnd * (b - a) + aPrint s符号函数:Sgn绝对值:AbsDim x!, y!x = 3.12Print Sin(x), Exp(1)Print Sqr(2), Rnd, Abs(-x)函数后括号必须使用圆括号。例:用海伦公式计算三角形面积。Private Sub Command1_Click()Dim x!, y!, z!, l!, s!x = 3y = 4z
19、= 5l = (x + y + z) / 2s = Sqr(l * (l - x) * (l - y) * (l - z)Print x, y, z, sEnd Sub课堂练习:已知等腰梯形的上底、下底和高,求梯形的面积和周长。(2)转换函数转换变量内容的不同类型。*Asc:转换字符为ASCII码*Chr:把ASCII码值转换为字符Fix:取整*Int:取小于等于N的最大整数*Round:四舍五入函数*Str:数值转换为字符串*Val:数字字符串转换为数值LCase:转换成小写UCase:转换成大写Private Sub Command1_Click()Print Asc(A), Asc(a)
20、Print Chr(65), Chr(97)Print Fix(-3.5), Fix(3.5)Print Int(-3.5), Int(3.5)Print Str(123), Val(456)End Sub(3) 字符串函数*Left:取左边的子串,Left(字符串,k),k是字符数*Right:取右边的子串,Right(字符串,k),k是字符数*Mid:取中间的子串,Mid(字符串,p,k),p是起始位置,k是字符数Dim str$, str1$, str2$, str3$, str4$str = abcdefgstr1 = Left(str, 3)str2 = Right(str, 3)s
21、tr3 = Mid(str, 4, 2)str4 = Left(str, 3) & Right(str, 3)Print str1, str2, str3, str4End SubInStr:找子串,InStr(str1,str2),查找str2是否在str1中,若找到则返回位置,否则返回0*Len:求字符串长度*Trim:去除字符串两边的空格(4)日期函数Now:当前的日期时间Data,Time:当前的日期、时间Day:日期代号Month:月代号Year:年代号Dim d As Date, y%, m%, r%, d1 As Dated = #3/14/2012#y = Year(d)m =
22、 Month(d)r = Day(d)Print d, y, m, rEnd Sub*DateAdd:增加日期的函数DateAdd(“格式”,增减量,日期)格式:yyyy年,m月,d日,h时,m分,s秒*DateDiff:两个日期相差日期DateDiff(“格式”,日期1,日期2)Dim d As Date, y%, m%, r%, d1 As Dated = #3/10/2012#d1 = DatePrint d, d1, DateDiff(m, d1, d)第八讲(2012.3.15)Shell函数 外壳格式:Shell(命令字符串,窗口类型)返回任务标示号Private Sub Comm
23、and1_Click()i% = Shell(calc.exe, vbNormalFocus)End Sub资源管理器:explorer.exe(1) 程序结构三种结构:顺序结构、分支结构和循环结构事件函数列表框注意:*一行可以写多条语句,每条语句用冒号“:”隔开,一行最多有255个字符。*一条语句写多行,用续行符“_”连接,注意前加个空格。*注释符号撇号“”Private Sub Command1_Click()Dim i%, j%, k%, a!, b!, c!, x!, delta!i = 1: j = 1: k = 1 一行写多条语句注释可以单独写一行a = 1: b = 2: c =
24、 1delta = b * b - 4 _* a * cEnd Subyakiximusiz例:编程计算两个数的加、减、乘、除。Private Sub Command1_Click()Dim a!, b!, r!a = Val(Text1.Text)b = Val(Text2.Text)r = a + bText3.Text = rEnd SubPrivate Sub Command2_Click()Dim a!, b!, r!a = Val(Text1.Text)b = Val(Text2.Text)r = a - bText3.Text = rEnd SubPrivate Sub Comm
25、and3_Click()Dim a!, b!, r!a = Val(Text1.Text)b = Val(Text2.Text)r = a * bText3.Text = rEnd SubPrivate Sub Command4_Click()Dim a!, b!, r!a = Val(Text1.Text)b = Val(Text2.Text)r = a / bText3.Text = rEnd Sub第九讲(2012.3.27)一赋值语句变量名=表达式*赋值号两边类型不同的处理强制转化为左边的类型Dim a%,b!,c&a=3.12b=a+3c=b-2print a,b,c结果是:3 6
26、4二数据的输入和输出对于文本框,应该熟悉Val函数1使用InputBox函数InputBox(提示,标题,默认值,x坐标,y坐标)如果输入值与左边变量类型不匹配将出错Dim a!, b!, c!a = Val(InputBox(输入边a:)b = Val(InputBox(输入边b:)c = Val(InputBox(输入边c:)Print a + b + c例:输入圆的内径r,求圆周长、面积。Private Sub Command1_Click()Const PI = 3.14159Dim r!, c!, s!r = Val(InputBox(输入内径r:)c = 2 * PI * rs =
27、 PI * r * rPrint 周长为:, c, 面积为:, sEnd Sub例:输入一元二次方程的系数a,b,c,求它的实根。Private Sub Command1_Click()Dim a!, b!, c!, x!, delta!a = Val(InputBox(输入a:)b = Val(InputBox(输入b:)c = Val(InputBox(输入c:)delta = b * b - 4 * a * cx = (-b + Sqr(delta) / 2 / aPrint 根为:, xEnd Sub课堂练习:要求输入两个数a和b,实现交换后打印。如果在提示中要回车或换行,可以加Chr
28、(13)或Chr(10),或用vbCrLf常量。a = Val(InputBox(输入a: & Chr(10) & 输入b:)a = Val(InputBox(输入a: + vbCrLf + 输入b:)a = Val(InputBox(输入a:, 输入对话框, 3)2使用MsgBox函数输出变量=MsgBox(提示,按钮,标题)函数如果不出现在赋值号的右边,则应该把函数的括号去掉。MsgBox 这是一个提示, vbOKCancelMsgBox 这是一个提示, vbOKCancel, 这是一个问题课堂练习:输入两个数a和b,计算并打印它们的加、减、乘、除的值第十讲(2012.3.28)一Print方法对象名.Print 定位函数输出列表分隔符1 定位函数:Spc(n):n个空格Tab(n):定位于n列可用CurrentX和CurrentY来定位光标位置2输出列表由分隔符隔开的变量或表达式。如:Print 根为:, x3分隔符有分号(;)和逗号(,)。区别:分号定位在上一个显示的字符后,而逗号定位在下一个打印区(14列)Print 1, 2, 3Print 1; Tab(5); 2; Tab(10); 3Print 1; Spc(1); 2
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1