1、 FontUnderline 下划线 (7) ForeColor属性:前景颜色(8) BackColor属性:背景颜色(9) MousePointer属性:鼠标指针类型, 设置值范围015,由系统指定 。若为99,由用户提供的图形文件定义鼠标指针形状。(10) MouseIcon属性:在MousePointer属性值为99时,存放自定义的鼠标图标文件(.ico或.cur)。图标库在Graphics目录下。3.窗体的事件:Load事件是在窗体被装入工作区时触发的事件。当应用程序启动,自动执行该事件,该事件通常用来在启动应用程序时对属性和变量进行初始化。窗体的方法:(1)Print方法用来显示文本
2、内容,格式:对象.print 表达式(2)Cls方法 清除运行时在窗体或图形框中产生的文本或图形, Cls方法不能清除窗体在设计时的文本和图形。格式:对象.cls(3)Move方法可移动窗体或控件,并可改变其大小。语法格式如下:对象.Move 左边距离,上边距离,宽度,高度4.标签作用:用于显示文本(输出)信息,不能作为输入信息的界面。其内容只能通过Caption属性设置或修改,不能直接编辑。5.文本框是一个文本编辑区域,可以在该区域输入、编辑、修改和显示正文内容。在VB中字符长度以字为单位,也就是一个西文字符与一个汉字都是一个字,长度为1。重要属性(1) Text 显示或输入的正文内容。(2
3、) Maxlength 设置文本框可输入的文字最大长度。默认值为0,表示可以输入任意长字符串。(3) MultiLine 多行属性设置为True时,文本框可以输入或显示多行正文,同时具有文字处理器的自动换行功能,按Enter键可插入一空行。(4) ScrollBars 滚动条属性 0-None 无滚动条 1-Horizontal 水平滚动条 2-Vertical 垂直滚动条 3-Both 同时加水平和垂直滚动条注意:当MultiLine为True时,ScrollBars才有效(5) PassWordChar 设置显示文本的替代符。例如,当设置为“*”,则在文本框输入的内容均以“*”显示,而存储
4、的值是用户输入的原文。一般用于设置口令的输入。当MultiLine为True时,该属性不起作用,密码不允许多行。(6) Locked 指定文本控件是否可被编辑,默认值为False(可编辑),当设置为True时,文本控件相当于标签控件的作用。Locked与Enabled的区别。(7)文本内容进行选择操作的三个属性SelStart 选定的正文开始位置SelLength 选定的正文长度SelText 选定的正文内容这3个属性互相关联,例如设置SelStart、SelLength后,SelText 自动存放指定的文本。属性窗口中没有这三个属性,只能在程序代码中使用。6.文本框的事件:(1) Chang
5、e事件:当Text属性值发生改变时引发该事件(2) KeyPress事件:按下并且释放键盘上的一个键时,引发焦点所在控件的KeyPress事件,所按键的值存放在参数KeyAscii中。对回车的判断 KeyAscii=137.文本框最有用的方法是SetFocus,把光标移到指定的文本框中。8.命令按钮 Picture属性:按钮可显示图片文件(.bmp和.Ico),当Style为1时有效。10. 启动窗体时将命令按钮定位在窗体中央的代码 Private Sub Form_Load() Command1.Left = Form1.ScaleWidth / 2 - Command1.Width / 2
6、 Command1.Top = Form1.ScaleHeight / 2 - Command1.Height / 2 End Sub11vb图片文件在 C:Program FilesMicrosoft Visual StudioCommonGraphics 文件夹。 安装VB时可选择是否安装这些图片文件。习题三1. 合法常量:(1) Double(2) 错误(3) Double(4) Double(5) 错误(6) Integer(7) String(8) String(9) Date(10) Double(11) 错误(汉字字符)(12)Integer(八进制)(13) 错误(八进制无数码
7、8)(14) Integer(15) Boolean(16) 错误(17) 错误(十六进制无数码g)(18) Single说明:浮点型变量默认为Double类型而非Single。2. 合法变量名:(1) (2) (3) 误:数字开头(4) 误:含空格(5) 误:关键字(6) (7) 误:(8) 误:有括号(9) (10) (11) (12) (汉字字符可作为变量名,但不常用,且此名称易误解)变量命名规则见P.41-42。字母(汉字)开头,字母(汉字)、数字、下划线组成,长度为1-255个字符;关键字不可作为变量名,但可在变量名中嵌入关键字;不区分大小写。常量、数组、类型、函数、过程、对象命名规
8、则与此相同。常量名通常全用大写。3. 写VB表达式(1) Abs(x + y) + z 5(2) (1 + x * y) 6(3) (10 * x + Sqr(3 * y) / (x * y)(4) (-b + Sqr(b 2 - 4 * a * c) / (2 * a)(5) 1 / (1 / r1 + 1 / r2 + 1 / r3)(6) Sin(45 * 3.14159 / 180) + (Exp(10) + Log(10) / Sqr(x + y + 1)4. 根据条件写表达式(1) 随机产生大写字母 Chr(Int(Rnd * (Asc(L) - Asc(C) + 1) + Asc
9、()(2) 100,200内的随机数 Int(Rnd * 101) + 100(3) 点(x,y)位于第一或第三象限 x 0 And y 0 Or x 0 And y 0(4) x是5或7的整数倍 x Mod 5 = 0 Or Int(x / 7) = x / 7(5) 将两位整数x的个位与十位对换 x 10 + (x Mod 10) * 10(6) 四舍五入取两位小数 Round(x, 2)(7) 字符变量C是字母字符(不区分大小写)准确地说是:字符变量C的第一个字符是字母 C = A And C a z或 UCase(C) And UCase(C) And LCase(C) (8) 字符变
10、量S第5个字符起取6个字符 Mid(S, 5, 6)(9) 10x20 10 = x And x 20(10) x,y至少有一个小于z x z Or y z And y 5. 写表达式的值(1) 188 注意运算的优先级顺序,以及整除运算“”的计算(2) 200100 计算100 + 100时,由于两个操作数类型不同,在可能的情况下自动采用精度较高的类型,即把字符型转换为数值型,100 +100 得到200;然后进行字符串连接运算200 & 100 ,再自动将两个数值转换为字符串,得200100。(3) 68.56 在四舍五入函数产生之前,这就是四舍五入的计算方法(4) 876554 先进行字
11、符串的“+”运算,再转换成数值。在变量名和函数名后可加上类型符,以强调其类型,但不是必须的。(5) 2000-2-29(6) 66Shell函数调用i = Shell(mspaint.exe, 1) 启动画图C:Program FilesMicrosoft OfficeOFFICE11winword.exe启动Word“画图”是Windows本身提供的程序,可以省略路径。8. 答:单精度浮点型第7,9题答案在教材中找。习题四第1,3,5,8题答案在教材中找。2. 赋值语句的错误 (1)10x 不能做变量名。 上机验证结果:VB将10识别为行号,x = Sin(x) + y是为变量x赋值。故无语
12、法错误。(2)Sqr函数的参数为负数。“无效的过程调用或参数”(3)赋值号左边不是变量名。“缺少子程序、函数或属性”(4)除数为0“溢出”。4. 答案略小数位可以使用四舍五入函数Round或输出格式函数Format。例如Round(x, 2)和Format(x, “0.00”)均可使结果只保留两位小数。但如果四舍五入后要进行数值运算,则使用Round函数,例如z=Round(x,2)+Round(y,2)。而Format函数通常只用于输出格式设置。6指出错误(1)“”应改为“=”,前者是中文字符,不具有运算功能。(2)“10x20”应改为“10x And x 20 Then y = x 2 +
13、 3 * x + 2ElseIf x = 10 Then y = Sqr(3 * x) - 2 0 Then y = 1 / x + Abs(x)Print y=; y# 使用Select Case语句Select Case x Case Is = 10End Select(3)Dim x As Single, y As Single, z As Single, Max As Singley = Val(InputBox(z = Val(InputBox(z=Max = xIf y Max Then Max = yIf z Max Then Max = zMax= Max# 使用IIF函数Ma
14、x = IIf(x y, x, y)Max = IIf(z Max, z, Max)9. 计算循环次数(1) 6 (2)19 (3)0 (4)死循环直至溢出10. 40号语句执行 4次;第50 号语句执行12次; 执行第90号语句输出的结果是: 13,0,2该程序为嵌套循环,其中外循环由j值变化(1,4,7,10)控制执行4次,当j值为13时结束循环;内循环由k值变化(6,4,2)控制执行3次,当k值为0时结束循环。第40 行是外循环的循环体,故执行4次;第50 行是内循环的循环体,故执行4*3=12次。11. 可以定一个较大的循环次数,在循环体中根据条件用Exit For退出。 但这种情况通
15、常用Do While循环控制。12. 编程(并非唯一正确答案)Dim i As Integer, s As IntegerFor i = 1 To 10 s = s + (i + 1) * (2 * i + 1)Next is= sDim i As Integer, n3 As Integer, n7 As IntegerFor i = 1 To 100 If i Mod 3 = 0 Then n3 = n3 + 1 If Int(i / 7) = i / 7 Then n7 = n7 + 11-100中3的倍数有 n3;个1-100中7的倍数有 n7;Dim s1 As String, s2
16、 As String, i As Integers1 = InputBox(Input Strings2 = For i = 1 To Len(s1) s2 = Mid(s1, i, 1) + s2原序: s1反序: s2或For i = Len(s1) To 1 Step -1 s2 = s2 + Mid(s1, i, 1)13. 输出字符串“10100”。该程序功能是将十进制数转化为二进制。要理解该程序需要了解数制转换的计算方法(有兴趣者参看XX百科14. 运行时输出 22 484 该程序功能是求x和y最大公约数和最小公倍数。此算法称为“辗转相减法”。可对照例4.17的辗转相除(辗转求余)
17、法。1550,100间的20个随机数,求最大值、最小值、平均值。Dim x As Integer, sum As Integer, aver As SingleDim n%, i%, max%, min%Randomizemax = 50: min = 100: n = 20For i = 1 To n x = Int(Rnd * 51 + 50) List1.AddItem x sum = sum + x If x max Then max = x If x Len(a(imax) Then imax = i End If Print 最长的字符串: a(imax)End Sub 第7,8题
18、答案在教材中找。第9题“自定义变量”含义不明,暂时无法回答。第5,10 题 暂略习题六 第1,2,6-8题答案可在教材中找到。3指出过程说明中的错误(1)Sub子过程不应该定义类型(2)函数与形式参数不应该同名(3)数组作为形式参数时,应使用传地址方式,不可使用传值(ByVal)(4)形式参数应该是变量或数组名,不可以是一个数组元素4指出调用过程语句的错误(1)无语法错误,但因形参sum所对应的实参是常量3,故计算结果无法传递给主调程序。(2)实参变量c与形参sum的类型不一致。(3)类似于(1),形参sum所对应的实参是表达式a+b,故计算结果无法传递给主调程序。(4)类似于(1)和(2),
19、形参sum所对应的实参是表达式Sqr(c),故计算结果无法传递给主调程序。另外srq(a)存在语法错误(拼写错)。(5)与(2)相同,实参c与形参sum的类型不一致。5迭代法求平方根(1)自定义函数的定义及调用Function FSqr1(a As Single) As Single Dim x0 As Single, x As Single x = a Do x0 = x x = (x0 + a / x0) / 2 Loop While Abs(x - x0) 0.00001 FSqr1 = xEnd FunctionPrivate Sub Command1_Click() Dim x!, y! x = Val(InputBox(= 0 Then y = FSqr1(x) Print y(2)自定义子过程的定义及调用Sub FSqr2(a As Single, x As Single) Dim x0 As SinglePrivate Sub Command2_Click() Call FSqr2(x, y)(3)递归函数及调用 略习题七 第1-9题,答案在教材上找;第10,12-14题,略。11检测Ctrl和F3同时按下的代码:P
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1