VB设计题.docx
《VB设计题.docx》由会员分享,可在线阅读,更多相关《VB设计题.docx(29页珍藏版)》请在冰豆网上搜索。
VB设计题
程序设计题
1.新建一个工程,完成“加法器”程序的设计。
具体要求如下:
1.窗体的标题为“加法器“,固定边框。
2.在窗体上从上到下依次引入TEXT1、TEXT2、TEXT3三个文本框,三个文本框的对齐方式均为右对齐。
3.从上面两个文本框用于输入加数,要求不接受非数字键。
4.下面一个文本框用于显示和,它不能进行编辑操作。
5.单击“=“按钮〔COMMAND1〕,将两个加数的各显示在下面一个文本框中。
6.单击“清空“按钮〔COMMAND2〕,三个文本框内容都被清空,同时第一个文本框获得焦点。
PrivateSubForm_Load()
Text1.Alignment=1
Text2.Alignment=1
Text3.Alignment=1
Text3.Locked=True
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48OrKeyAscii>57Then
KeyAscii=0
EndIf
EndSub
PrivateSubText2_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48OrKeyAscii>57Then
KeyAscii=0
EndIf
EndSub
PrivateSubCommand1_Click()
Text3.Text=Val(Text1.Text)+Val(Text2.Text)
EndSub
PrivateSubCommand2_Click()
Text1.Text=""
Text2.Text=""
Text3.Text=""
Text1.SetFocus
EndSub
2.新建一个工程,完成“健康称”程序的设计。
具体要求如下:
1.窗体的标题为“健康称”,固定边框。
2.窗体的左边有两个标签,,Label1的标题为“身高”、Label2的标题为“体重”;它们的旁边分别有两个文本框,Text1用于输入身高、Text2用于输入体重;在文本框的右边有两个标签,Label3的标题为“cm”、Label4的标题为“kg”。
3.将两个文本框文字对齐方式均设置为右对齐,最多接受3个字符。
4.两个文本框均不接受非数字键。
5.单击“健康状况”按钮〔Command1〕,根据计算公式将相应的提示信息显示在标签Label5中。
计算公式为:
标准体重=身高-105;体重高于标准体重*1.1为偏胖,提示“偏胖,注意节食”;体重低于标准体重*0.9为偏瘦,提示“偏瘦,增加营养”;其他为正常,提示“正常,继续保持”。
PrivateSubForm_Load()
Form1.Caption="健康称"
Text1.Alignment=1
Text2.Alignment=1
Text1.MaxLength=3
Text2.MaxLength=3
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48OrKeyAscii>57Then
KeyAscii=0
EndIf
EndSub
PrivateSubText2_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48OrKeyAscii>57Then
KeyAscii=0
EndIf
EndSub
PrivateSubCommand1_Click()
DimsgAsSingle,tzAsSingle,bzAsSingle
sg=Val(Text1.Text)
tz=Val(Text2.Text)
bz=sg-105
Iftz>1.1*bzThen
Label5.Caption="偏胖,注意节食"
ElseIftz<0.9*bzThen
Label5.Caption="偏瘦,增加营养"
Else
Label5.Caption="正常,继续保持"
EndIf
EndSub
3.新建一个工程,完成应用程序的设计,具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.取消窗体的最大化和最小化按钮。
3.当单击命令按钮时,实现窗口放大功能,放大后再单击该按钮则复原窗口。
4.同时可使用热键Alt+L和Alt+B实现窗口放大或复原。
5.当窗体大小改变后,总是让命令按钮位于窗口的中央。
PrivateSubForm_Load()
Command1.Caption="最大化(&L)"
EndSub
PrivateSubCommand1_Click()
IfCommand1.Caption="最大化(&L)"Then
Form1.WindowState=2
Command1.Caption="复原(&B)"
Else
Form1.WindowState=0
Command1.Caption="最大化(&L)"
EndIf
EndSub
PrivateSubForm_Resize()
Command1.Left=(Form1.ScaleWidth-Command1.Width)/2
Command1.Top=(Form1.ScaleHeight-Command1.Height)/2
EndSub
4.新建一个工程,完成“判断质数”应用程序的设计。
具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.在"请输入"文本框中输入一个数字后,单击判断,可在"结果为"显示判断结果。
3.假设输入的不是数字,则弹出消息框,提示信息是"输入的不是数字,无法计算"。
PrivateSubCommand1_Click()
DimnAsInteger,iAsInteger,yAsBoolean
y=True
n=Val(Text1.Text)
Fori=2ToSqr(n)
IfnModi=0Then
y=False
ExitFor
EndIf
Nexti
Ify=TrueThen
Label3.Caption=n&"是质数"
Else
Label3.Caption=n&"不是质数"
EndIf
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48OrKeyAscii>57Then
KeyAscii=0
MsgBox"输入的不是数字,无法计算",,"design"
EndIf
EndSub
5.新建一个工程,完成“计算平均成绩”应用程序的设计。
具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.在输入或修改单科成绩的同时计算平均分,即在"高数","英语"和"电脑"文本框内容发生改变时,就要立即重新计算平均分,并将计算结果在平均成绩文本框中显示。
3.“平均成绩”文本框不允许编辑,即不能手工修改。
4.各单科成绩框中只能输入数字,不能输入字母或汉字,否则不显示字母并发出错误提示音。
PrivateSubForm_Load()
Form1.Caption="计算平均成绩"
Text4.Locked=True
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48AndKeyAscii<>8OrKeyAscii>57Then
KeyAscii=0不能输入字母汉字,只能输数字
Beep
EndIf
EndSub
PrivateSubText2_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48AndKeyAscii<>8OrKeyAscii>57Then
KeyAscii=0
Beep
EndIf
EndSub
PrivateSubText3_KeyPress(KeyAsciiAsInteger)
IfKeyAscii<48AndKeyAscii<>8OrKeyAscii>57Then
KeyAscii=0
Beep
EndIf
EndSub
PrivateSubText1_Change()
Text4.Text=(Val(Text1.Text)+Val(Text2.Text)+Val(Text3.Text))/3
EndSub
PrivateSubText2_Change()
Text4.Text=(Val(Text1.Text)+Val(Text2.Text)+Val(Text3.Text))/3
EndSub
PrivateSubText3_Change()
Text4.Text=(Val(Text1.Text)+Val(Text2.Text)+Val(Text3.Text))/3
EndSub
6.新建一个工程,完成“收款计算”程序的设计。
具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.窗体上有三个文本框,上面两个分别用于输入商品单价和商品数量,单击“计算”,将应付款显示在下面一个文本框中。
3.最下面一个文本框不能直接输入。
4.单击“清空”按钮,三个文本框内容被清空,同时第一个文本框获得焦点。
PrivateSubForm_Load()
Text3.Locked=True
EndSub
PrivateSubCommand1_Click()
Text1.Text=""
Text2.Text=""
Text3.Text=""
Text1.SetFocus
EndSub
PrivateSubCommand2_Click()
DimdjAsSingle,slAsInteger
IfText1.Text=""Then
MsgBox"请输入单价!
",48,"警告!
"
Else
dj=Val(Trim(Text1.Text))
sl=Val(Trim(Text2.Text))
Ifsl=0ThenText2.Text=1:
sl=1
Text3.Text=dj*sl
EndIf
EndSub
7.新建一个工程,完成“编辑”程序的设计。
具体要求如下:
1.窗体的标题为“编辑”。
2.窗体中有以下控件:
一个文本框、四个命令按钮。
3.完成以下功能:
文本框实现文本编辑功能,单击按钮实现相应功能。
DimXAsString
PrivateSubForm_Load()
Form1.Caption="编辑"
Command1.Enabled=False
Command2.Enabled=False
Command3.Enabled=False
Command4.Enabled=False
EndSub
PrivateSubCommand1_Click()
X=Text1.SelText
Command1.Enabled=False
Command2.Enabled=False
Command3.Enabled=True
Command4.Enabled=False
EndSub
PrivateSubCommand2_Click()
X=Text1.SelText
Text1.SelText=""
Command1.Enabled=False
Command2.Enabled=False
Command3.Enabled=True
Command4.Enabled=False
EndSub
PrivateSubCommand3_Click()
Text1.SelText=X
EndSub
PrivateSubCommand4_Click()
Text1.SelText=""
Command1.Enabled=False
Command2.Enabled=False
Command3.Enabled=False
Command4.Enabled=False
EndSub
PrivateSubText1_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfText1.SelText=""Then
Command1.Enabled=False
Command2.Enabled=False
Command4.Enabled=False
Else
Command1.Enabled=True
Command2.Enabled=True
Command3.Enabled=False
Command4.Enabled=True
EndIf
EndSub
8.新建一个工程,完成“密码检验”程序的设计。
具体要求如下:
1.窗体的标题为“密码检验”,固定边框。
2.窗体上有一个标签Label1,标题为“输入密码后按回车提示:
密码1234567”。
3.标签Label1旁边有一个文本框Text1,用于输入密码。
文本框中输入的字符显示为*,并且最多可以接受7个字符。
4.窗体的下半部有一个标签控件Label2,用来显示密码输入后的提示信息。
它的文字对齐方式为居中对齐,文字颜色为红色,Font设置为:
宋体、常规、三号;标签的大小随字体自动调整,并设置为不可见。
5.当在文本框中输入密码“1234567”,并按回车后,标签Label2显示为“欢送光临!
”;如果输入的密码与“1234567”不吻合,标签Label2显示为“密码不符,请再输入一遍!
”,同时清空文本框的内容,允许再输入一遍;如果第二次输入的密码仍然与“1234567”不吻合,标签Label2显示为“非法用户,请退出程序!
”,文本框就不能使用了。
PrivateSubForm_Load()
Form1.Caption="密码检验"
Label1.Caption="输入密码后按回车"&vbCrLf&"(提示:
密码1234567)"
Text1.MaxLength=7
Text1.PasswordChar="*"
Label2.Caption=""
Label2.Alignment=2
Label2.ForeColor=vbRed
Label2.AutoSize=True
Label2.Visible=False
EndSub
PrivateSubText1_KeyPress(KeyAsciiAsInteger)
StaticnAsInteger
IfKeyAscii=13Then
n=n+1
IfText1.Text="1234567"Then
Label2.Visible=True
Label2.Caption="欢送光临!
"
Text1.Enabled=False
Else
Ifn<2Then
Label2.Visible=True
Label2.Caption="密码不符,请再输入一遍!
"
Text1.Text=""
Else
Label2.Visible=True
Label2.Caption="非法用户,请退出程序!
"
Text1.Text=""
Text1.Enabled=False
EndIf
EndIf
EndIf
EndSub
9.新建一个工程,完成应用程序的设计。
具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.当单击"确定"按钮后,首先比较"用户名"和"原密码"是否一致,假设一致且都为"admin",则继续执行步骤3;否则弹出消息框,提示用户出错,并让用户重新输入;
3.比较“新密码〔N〕”和“新密码〔S〕”,假设两者一致,弹出密码修改成功消息框,程序终止执行。
否则弹出错误消息,并让用户重新输入。
4.当单击“取消”按钮时,程序终止执行。
5.当按"Tab"键时,保证按照“用户名”、“原密码”、“新密码〔N〕”、“新密码〔S〕”、“确定”按钮和“取消”按钮顺序访问各控件。
PrivateSubCommand1_Click()
IfText1.Text=Text2.TextAndText1.Text="admin"Then
IfText3.Text=Text4.TextThen
MsgBox"密码修改成功!
",,"修改密码"
Else
MsgBox"新密码有误,请重试!
",,"修改密码"
EndIf
Else
MsgBox"用户名或密码无效,请重试!
",,"修改密码"
EndIf
EndSub
PrivateSubCommand2_Click()
End
EndSub
PrivateSubForm_Load()
Text2.PasswordChar="*"
Text3.PasswordChar="*"
Text4.PasswordChar="*"
EndSub
10.新建一个工程,完成应用程序的设计。
具体要求如下:
11.新建一个工程,完成“替换”程序的设计。
具体要求如下:
1.窗体的标题为“替换”。
2.窗体中有以下控件:
一个文本框可以多行编辑,两个文本框,两个标签框,一个命令按钮。
3.完成以下功能:
输入查找内容,把编辑框中所有与查找内容一样的部分替换成另外一个内容。
单击“替换”按钮执行。
PrivateSubCommand1_Click()
Dimlen1AsInteger,len2AsInteger,len3AsInteger
len1=Len(Text1.Text)
len2=Len(Text2.Text)
len3=Len(Text3.Text)
DoWhileiText1.SelStart=i
Text1.SelLength=len2
IfText1.SelText=Text2.TextThen
Text1.SelText=Text3.Text
len1=len1-len2+len3
i=i+len3
Else
i=i+1
EndIf
Loop
EndSub
12.新建一个工程,完成应用程序的设计。
具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.4个单项选择按钮,分别用于显示星期、年份、月份和日期。
3.一个文本框,选中单项选择按钮时,显示相应的信息。
4.一个命令按钮,单击该按钮时,退出应用程序。
PrivateSubCommand1_Click()
End
EndSub
PrivateSubOption1_Click()
Text1.Text="今天是星期"&Weekday(Date)-1
EndSub
PrivateSubOption2_Click()
Text1.Text="今天是"&Year(Date)&"年"
EndSub
PrivateSubOption3_Click()
Text1.Text="今天是"&Month(Date)&"月"
EndSub
PrivateSubOption4_Click()
Text1.Text="今天是"&Day(Date)&"号"
EndSub
13.新建一个工程,完成“字体修饰”程序的设计。
具体要求如下:
按照下列图所示在窗体上放置按钮和控件。
窗体的标题为“字体修饰”。
框架Frame1中有一个复选框数组,可以选择粗体,斜体对标签中的文字进行修饰。
框架Frame2中有一个单项选择钮框数组,可以选择宋体或楷体对标签中的文字进行修饰。
标签Label1的文字内容为“VisualBasic程序设计“,宋体,常规,三号;文字对齐方式为居中。
PrivateSubForm_Load()
Form1.Caption="字体修饰"
Label1.AutoSize=True
Label1.Left=(Form1.ScaleWidth-Label1.Width)/2
Option1(0).Value=True
EndSub
PrivateSubCheck1_Click(IndexAsInteger)
IfCheck1(0).Value=1Then
Label1.FontBold=True
Else
Label1.FontBold=False
EndIf
IfCheck1
(1).Value=1Then
Label1.FontItalic=True
Else
Label1.FontItalic=False
EndIf
Label1.Left=(Form1.ScaleWidth-Label1.Width)/2
EndSub
PrivateSubOption1_Click(IndexAsInteger)
SelectCaseIndex
Case0
Label1.FontName="宋体"
Case1
Label1.FontName="楷体"
EndSelect
Label1.Left=(Form1.ScaleWidth-Label1.Width)/2
EndSub
14.新建一个工程,完成“点餐”程序的设计。
具体要求如下:
15.新建一个工程,完成应用程序的设计。
具体要求如下:
1.按照下列图所示在窗体上放置按钮和控件。
2.窗体上有两个CheckBox,当这两个选项未被选定时,它们所在框架的其他控件不能使用。