标准控件习题_第1页
标准控件习题_第2页
标准控件习题_第3页
标准控件习题_第4页
标准控件习题_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、例1:编程实现三个图片框中图片的轮换,并使得一个图片框中可以显示整个图片。(1)界面设计在窗体上添加如图1所示三个图片框控件Picture1、Picture2、Picture3。将Picture3的AutoSize属性设置为True。其他属性值为默认值。 (a)设计时界面 (b)运行时界面 (c)响应事件图1 图片框(2)编写事件代码在Form_Load()事件中加入如下代码:Private Sub Form_Load() Picture1.Picture = LoadPicture(c:steamship.gif) Picture2.Picture = LoadPicture(c:bus.g

2、if) Picture3.Picture = LoadPicture(c:car.gif)End Sub在Picture3_Click()事件中加入如下代码:Private Sub Picture3_Click() Form1.Picture = Picture3.Picture Picture3.Picture = Picture2.Picture Picture2.Picture = Picture1.Picture Picture1.Picture = Form1.Picture Form1.Picture = LoadPicture()End Sub例2:建立两个列表框,分别为可购商品

3、列表框和顾客购物列表框。要求程序能够完成商品选购、撤消选购、添加新商品、删除现有商品、统计全部选购的商品价格等操作。(1)界面设计如图所示,在窗体上添加的2个框架、两个列表框、5个命令按钮。除列表框外其余控件的Caption属性见表1。表1 控件属性Frame1Frame2Command1Command2Command3Command4Command5Caption商品列表购物列表选购商品撤消选购添加商品删除商品价格统计Private Sub Command1_Click() 选中某个选项后,调用List1_DblClick事件 If List1.ListIndex -1 Then List1

4、_DblClick End SubPrivate Sub Command2_Click() 选中List2中某个选项后,将其删除 If List2.ListIndex -1 Then List2.RemoveItem List2.ListIndexEnd SubPrivate Sub Command3_Click() newlist = InputBox(输入新商品) 从对话框中输入新商品名 List1.AddItem newlist 添加到List1中End SubPrivate Sub Command4_Click() 选中List1中某个选项后,将其删除 If List1.ListInd

5、ex -1 Then List1.RemoveItem List1.ListIndexEnd SubPrivate Sub List1_DblClick() 双击List1时给List2列表框添加项目 Dim k%, yandn% k = 0 For i = 0 To List2.ListCount 1 If List2.List(i) = List1.Text Then k = 1 判断List2列表框中是否已有选定项目 Next If k 1 Then List2.AddItem List1.Text List2列表框中无选定项目则添加 Else yandn = MsgBox(是:重复,否

6、:不重复, vbInformation + vbYesNo, 重复输入) If yandn = 6 Then List2.AddItem List1.Text 同意重复选择时也可以添加 End IfEnd Sub例3:将框架的应用实例进行改善,用列表框或组合框列出各电脑配件的选项供用户选择。用户每选择一项,将在“用户配置”组合框中添加对应的选择项,单击“求总价”按钮将在Picture1图片框中显示总价格。(1)界面设计设计如图所示界面,有9个框架,“CPU”框架和“显示器”框架为列表框,其余为组合框。每个框架中有一个列表框或组合框,框架的Capion属性值、列表框或组合框的名称相同,分别为各类

7、配件的名称。列表框和组合框的种类见图示。(设计时组合框的Text属性为相应组合框的名称)。(2)编写事件过程代码Dim cpupri, dypri, hdpri, mbpri, grapri, mempri, cdpri, othpri, realpri As SingleDim mycpu!, mydy!, myhd!, mygra!, mymb!, mymem!, mycd!, myoth!Private Sub Form_Load() cpupri 为存放CPU价格的数组 cpupri = Array(1000, 1100, 1200, 1300, 1400) 同样用Array函数为其他

8、存放各配件价格的数组dypri、hdpri、 mbpri 、grapri 、mempri、cdpri 赋值End SubPrivate Sub Command1_Click() 用户配置.AddItem cpu.Text, 0 用户配置.AddItem 光驱.Text 用户配置.AddItem 内存.Text 用户配置.AddItem 其他.Text 用户配置.AddItem 显卡.Text 用户配置.AddItem 显示器.Text 用户配置.AddItem 硬盘.Text 用户配置.AddItem 主板.Text 求总价格 realpri = mycpu + mydy + myhd + m

9、ygra + mymb + mymem + mycd + myoth Picture1.Print 总价=; realpriEnd SubPrivate Sub cpu_Click() mycpu = cpupri(cpu.ListIndex) mycpu存放所选择的CPU价格End Sub例4:利用计时器实现气球升空。在窗体上添加两个图片框控件Picture1Picture2,两个计时器Timer1、Timer2,令Interval1=10,Interval2=20,在Windows附件的“画图”程序中绘制几个气球,分别复制到两个图片框中。程序代码为:Private Sub Timer1_T

10、imer() Picture1.Top = Picture1.Top 10 气球上升 If Picture1.Top 0 Then Picture1.Top = Form1.Height - Picture1.Height 气球1回到窗体下部 End IfEnd SubPrivate Sub Timer2_Timer() Picture2.Top = Picture2.Top 10 气球上升 If Picture2.Top b Then Text1.Text = Str(a) & - & Str(b): c = a b 减法运算 Else Text1.Text = Str(a) & + & S

11、tr(b) : c = a + b 加法运算 End If Text2.Enabled = True 清空Text2并将焦点定位在Text2上,以便输入答案 Text2.Text = Text2.SetFocus k = 0 Label2.Visible = TrueEnd SubPrivate Sub Command3_Click() “暂停/继续”事件过程 If Command3.Caption = 暂停 Then Timer1.Enabled = False 暂停 Command3.Caption = 继续 Else Timer1.Enabled = True 继续 Command3.C

12、aption = 暂停 End IfEnd SubPrivate Sub Command2_Click() “结束”按钮事件过程 If Text1 And Text2.Text Then Command1_Click 防止漏判 Command1.Visible = False Command2.Visible = False Command3.Visible = False Timer1.Enabled = False 停止计时 Label3.Visible = False Label2.Caption = 你的得分是 & n - 10 & 分 显示成绩End SubPrivate Sub T

13、imer1_Timer() Static m! 存放总用时 m = m + 1 : k = k + 1 Label3.Caption = 总共用时 & Str(m) Label2.Caption = 当前剩余时间 & Str(10 - k) 显示倒计时 If k = 10 Then Label2.Caption = 时间到 Label2.Visible = False Text2.Enabled = False 当前时间到,禁止解答 k = 0 重新计时 End If If m = 100 Then Command2_Click 总用时完,调用“结束”事件End Sub例6:编写一个简易的指法

14、练习程序。要求,最大时限1分钟。(1)界面设计(2)编写代码Dim n As Integer, m As Integer n存放正确的击键数 ,m存放总击键数Private Sub Command1_Click() If Command1.Caption = 开始 Then Timer1.Enabled = True: Timer2.Enabled = True : Command1.Caption = 结束 开始练习 Else Timer1.Enabled = False :Timer2.Enabled = False 结束练习 If m 0 Then Print 正确率为: & n / m

15、 * 100 & % Print 击键次数:; m & 次 End IfEnd SubPrivate Sub Form_KeyPress(KeyAscii As Integer) m = m + 1 总击键数增1 击键正确,正确击键数增1,并清空标签 If Chr(KeyAscii) = Label1.Caption Then Label1.Caption = : n = n + 1 If Chr(KeyAscii) = Label2.Caption Then Label2.Caption = : n = n + 1 If Chr(KeyAscii) = Label3.Caption Then

16、 Label3.Caption = : n = n + 1End SubPrivate Sub Timer2_Timer()Static k!K=k+1If k=60 then Command1_Click 时限到,调用“结束”事件过程endifEnd SubPrivate Sub Timer1_Timer() Randomize 击键正确后产生新字符并将标签移到窗体底部,随机产生小写的英文字母 If Label1.Caption = Then Label1.Top = Form1.Height - Label1.Height : Label1.Caption = Chr(CInt(Rnd *

17、 26 + 97) Else Label1.Top = Label1.Top - 10 End If If Label2.Caption = Then Label2.Top = Form1.Height - Label2.Height : Label2.Caption = Chr(CInt(Rnd * 26 + 97) Else Label2.Top = Label2.Top - 10 End If If Label3.Caption = Then Label3.Top = Form1.Height - Label3.Height : Label3.Caption = Chr(CInt(Rnd * 26

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论