VB实验任务3答案Word格式文档下载.docx
《VB实验任务3答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《VB实验任务3答案Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
图片框
Picture1
(3)程序代码。
PrivateSubForm_Click()
。
。
’填写代码
EndSub
(4)运行程序。
(5)保存工程。
将窗体保存为3-1.frm,将工程保存为3-1.vbp。
实验2实验书实验3-2窗体中有2个图片框,每个图片框中各有一个图像框和复选框控件,且图像框中都加载了图片,界面如图3-2(a)所示。
当选中某图片框中的复选框,则清除该图片框中图像框的加载图片,如图3-2(b)所示。
∙(a)初始界面(b)复选框单击后的界面
∙图3-10实验3-2运行界面
在窗体Form1上添加2个图片框、2个图像框和2个复选框对象,每个图片框中有1个图像框和1个复选框。
(2)属性设置如表3-2所示。
表3-2控件属性设置
实验3-2
图片框1
P1
图片框2
P2
复选框1
Chk1
清空图片1
复选框2
图像框1
Image1
图像框2
Image2
DimpathAsString'
定义模块级变量,用于存放图片所在路径
PrivateSubForm_Load()
PrivateSubChk1_Click()
。
PrivateSubChk2_Click()
将窗体保存为3-2.frm,将工程保存为3-2.vbp。
实验3实验书实验3-3选择组合框中的礼品,单击“添加”命令按钮后将其显示在列表框中;
在列表框中选择某个不需要的礼品组合,单击“删除”命令按钮将其删除;
单击“清空”命令按钮,列表框中所有信息被删除,程序运行界面如图3-11所示。
在窗体上添加3个标签、2个组合框、3个命令按钮和1个列表框对象。
(2)属性设置如表3-3所示。
表3-3控件属性设置
实验3-3
Label1
礼品一
Label2
礼品二
标签3
Label3
您选择的礼品组合:
命令按钮1
CmdAdd
添加
命令按钮2
CmdDel
删除
命令按钮3
CmdClear
清空
组合框1
Combo1
组合框2
Combo2
列表框
List1
PrivateSubCmdAdd_Click()
PrivateSubCmdDel_Click()
PrivateSubCmdClear_Click()
将窗体保存为3-3.frm,将工程保存为3-3.vbp。
实验4实验书实验3-4利用滚动条改变RGB(r,g,b)函数中的r、g、b三个参数值,从而改变窗体的背景色,程序运行界面如图3-12所示。
在窗体上添加3个标签和3个滚动条对象。
(2)属性设置如表3-4所示。
表3-4控件属性设置
Form1
实验3-4
r:
g:
b:
滚动条1
HScrollR
形状
Max
255
Min
滚动条2
HScrollG
圆角矩形
滚动条3
HScrollB
椭圆
PrivateSubHScrollR_Change()
r=HScrollR.Value
g=HScrollG.Value
b=HScrollB.Value
Form1.BackColor=RGB(r,g,b)
PrivateSubHScrollG_Change()
PrivateSubHScrollB_Change()
将窗体保存为3-4.frm,将工程保存为3-4.vbp。
实验5实验书实验3-5利用框架和单选按钮改变形状控件对象的形状和填充样式,程序运行界面如图3-13所示。
图3-12实验3-4运行界面
图3-13实验3-5运行界面
在窗体上添加1个形状控件对象,2个命令按钮框架和4个单选按钮。
(2)属性设置如表3-5所示。
表3-5控件属性设置
实验3-5
框架1
Frame1
填充
单选按钮1
OptionH
水平线
单选按钮2
OptionV
垂直线
框架2
Frame2
单选按钮3
OptionR
单选按钮4
OptionO
形状控件
Shape1
Height
1200
Width
1000
PrivateSubOptionH_Click()
IfOptionH.Value=TrueThenShape1.FillStyle=2'
填充水平线
PrivateSubOptionV_Click()
’填写代码'
填充垂直线
PrivateSubOptionR_Click()
∙图3-14实验3-6的运行界面
’填写代码'
画圆角矩形
PrivateSubOptionO_Click()
画椭圆
将窗体保存为3-5.frm,将工程保存为3-5.vbp。
实验6实验书实验3-6利用时钟控件进行30秒倒计时。
要求:
界面中使用若干标签显示一些提示语和系统时间,使用文本框显示程序运行时间和30秒剩余时间。
当30秒计时一到,立即结束程序运行,程序运行界面如图3-14所示。
窗体上添加3个命令按钮和2个文本框对象。
(2)属性设置如表3-7所示。
表3-7对象的属性设置
属性
窗体1
CmdCopy
实验3-7
复制
续表
Text1
CmdCut
测试用例
剪切
Text2
CmdPaste
粘贴
Enabled
False
DimtemptextAsString'
定义模块级变量
PrivateSubCmdCopy_Click()
temptext=Text1.SelText'
记录所选中的文本
Iftemptext<
>
"
"
Then
CmdPaste.Enabled=True'
使″粘贴″按钮有效
Else:
MsgBox"
请先选中文本!
EndIf
PrivateSubCmdCut_Click()
temptext=Text1.SelText
Text1.SelText="
'
使选中的文本清空
CmdPaste.Enabled=True
Else
MsgBox"
PrivateSubCmdPaste_Click()
Text2.Text=temptext'
使选中的文本在文本框2中显示
将窗体保存为3-7.frm,将工程保存为3-7.vbp。
2.补充实验:
补充实验1
利用Timer计时器控件实现月亮的阴晴圆缺和变脸。
月亮的阴晴圆缺分析:
可以利用计时器控件的Timer事件,对Image图象控件轮流加载不同的图片,实现月亮的阴晴圆缺的动画效果。
在窗体上放置一个Timer计时器控件和1个Image图象控件。
(2)属性设置。
将计时器控件的Interval属性设置为2000
(3)添加程序代码如下。
ConstImagePath="
C:
\ProgramFiles\MicrosoftVisualStudio\Common"
PrivateSubTimer1_Timer()'
计时器控件的Timer事件,每隔2秒钟自动触发一次
StaticiAsInteger'
i表示图片的编号
Ifi=8Then
i=1
i=i+1
Image1.Picture=LoadPicture(ImagePath&
\Graphics\Icons\Elements\moon0"
&
i&
.ico"
)
变脸分析:
可以利用计时器控件的Timer事件,轮流改变图片控件的Visible可视属性,每次只允许一个图片控件的Visible属性为True,即可见,从而实现变脸的动态效果。
在窗体上放置一个Timer计时器控件和5个PictureBox图片控件。
利用格式菜单,将图片控件叠放在一起。
设置5个PictureBox图片控件的AutoSize属性为True,BorderStyle属性为0-None,Picture属性分别为
\ProgramFiles\MicrosoftVisualStudio\Common\Graphics\Icons\Misc\face01.ico
\ProgramFiles\MicrosoftVisualStudio\Common\Graphics\Icons\Misc\face02.ico
\ProgramFiles\MicrosoftVisualStudio\Common\Graphics\Icons\Misc\face03.ico
\ProgramFiles\MicrosoftVisualStudio\Common\Graphics\Icons\Misc\face04.ico
\ProgramFiles\MicrosoftVisualStudio\Common\Graphics\Icons\Misc\face05.ico
'
利用窗体的Load事件完成控件属性的初始值设置
Timer1.Interval=1500
Picture1.Visible=True
Picture2.Visible=False
Picture3.Visible=False
Picture4.Visible=False
Picture5.Visible=False
PrivateSubTimer1_Timer()
通过对PictureBox图片控件的Visible可视属性判断和设置
实现轮流显示和隐藏不同的图片,实现变脸的效果
IfPicture1.VisibleThen
Picture1.Visible=False
Picture2.Visible=True
ElseIfPicture2.VisibleThen
Picture3.Visible=True
ElseIfPicture3.VisibleThen
Picture4.Visible=True
ElseIfPicture4.VisibleThen
Picture5.Visible=True
思考:
上述两个实验在窗体上实现不同图片的动态显示,采用的方法有何不同?
补充实验2在名称为Form1的窗体上画一个文本框,其名称为Text1,初始内容为空白;
然后再画3个单选按钮,其名称分别为Op1、Op2和Op3,标题分别为北京、西安和杭州,编写适当的事件过程。
程序运行后,如果选择单选按钮Op1,则在文本框中显示“颐和园”;
如果选择单选按钮Op2,则在文本框中显示“兵马俑”;
如果选择单选按钮Op3,则在文本框中显示“西湖”。
程序运行情况如图2-5所示。
要求程序中不得使用变量,事件过程中只能写一条语句。
PrivateSubop1_Click()
T1.Text=“颐和园”
PrivateSubop2_Click()
T1.Text=“兵马俑”
PrivateSubop3_Click()
T1.Text=“西湖”
补充实验3在窗体上画一个文本框T1和两个框架F1、F2,框架F1中画两个单选按钮Op1、Op2,框架F2中画两个单选按钮Op3、Op4。
当单击窗体时,根据实际选择的单选按钮,在文本框中显示对应的文本信息,如图所示。
请完善程序代码:
T1.Text="
IfOp1.Value=TrueThen
T1.Text=T1.Text&
坐"
Op1.Caption
T1.Text=T1.Text=T1.Text&
Op2.Caption
IfOp3.Value=TrueThen
去"
Op3.Caption
Op4.Caption
补充实验4
PrivateSubHScroll1_Change()
Text1.FontSize=HScroll1.Value
补充实验5利用复选框实现统计成绩的界面设计。
(1)界面设计:
在窗体上添加一个框架Frame,然后在框架中添加3个复选框用于选择课程,和3个文本框用于输入成绩。
窗体上另有一个文本框用于输出。
(2)自行设置属性。
(3)要求:
a)选中相应复选框,其对应的文本框才可以输入(提示:
enabled属性),否则文本框清空并不可用。
文本框只可输最多3位数字(提示:
maxlength属性及任务二中实验5的代码)
b)单击确定按钮,在最下面的文本框中输出所选课程的成绩和总分(提示:
该文本框multiline属性设置为true,换行可以通过VbCrlf或Chr(13)&
Chr(10)实现,参考书本例2-9,分别定义两个变量用来存放文字信息和分数,如dimaasString,basInterger)
PrivateSubCheck1_Click()
IfCheck1.Value=1Then
Text1.Enabled=True
Text1.SetFocus
Else
Text1.Enabled=False
Text1.Text="
EndIf
PrivateSubCheck2_Click()
IfCheck2.Value=1Then
Text2.Enabled=True
Text2.SetFocus
Text2.Enabled=False
Text2.Text="
PrivateSubCheck3_Click()
IfCheck3.Value=1Then
Text3.Enabled=True
Text3.SetFocus
Text3.Enabled=False
Text3.Text="
PrivateSubCommand1_Click()
DimsAsString
DimaAsInteger
s="
您的成绩为:
IfCheck1.Value=1Thens=s+Check1.Caption+Text1.Text
IfCheck2.Value=1Thens=s+Check2.Caption+Text2.Text
IfCheck3.Value=1Thens=s+Check3.Caption+Text3.Text
a=Val(Text1.Text)+Val(Text2.Text)+Val(Text3.Text)
s=s+vbCrLf+"
总分为:
a
Text4.Text=s
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<
Asc("
0"
)OrKeyAscii>
9"
)ThenKeyAscii=0
PrivateSubText2_KeyPress(KeyAsciiAsInteger)
PrivateSubText3_KeyPress(KeyAsciiAsInteger)