VB编程案例蝴蝶飞舞计算器加密解密矩阵转置鸟巢统计文本编辑小球跳动学生信息录入窗口.docx
《VB编程案例蝴蝶飞舞计算器加密解密矩阵转置鸟巢统计文本编辑小球跳动学生信息录入窗口.docx》由会员分享,可在线阅读,更多相关《VB编程案例蝴蝶飞舞计算器加密解密矩阵转置鸟巢统计文本编辑小球跳动学生信息录入窗口.docx(25页珍藏版)》请在冰点文库上搜索。
VB编程案例蝴蝶飞舞计算器加密解密矩阵转置鸟巢统计文本编辑小球跳动学生信息录入窗口
目录
一、鸟巢绘制……………………………………………………………………………………2
二、加密…………………………………………………………………………………………3
三、解密…………………………………………………………………………………………4
四、蝴蝶飞舞……………………………………………………………………………………6
五、文本编辑……………………………………………………………………………………6
六、统计…………………………………………………………………………………………9
七、小球跳动……………………………………………………………………………………11
八、计算器(彩票摇奖)………………………………………………………………………12
九、学生信息录入………………………………………………………………………………16
十、矩阵转置……………………………………………………………………………………17
一、鸟巢绘制
PrivateSubForm_Click()
Cls
Dimr,xi,yi,xj,yj,x0,y0,aifAsSingle
r=Form10.ScaleHeight/2
x0=Form10.ScaleWidth/2
y0=Form10.ScaleHeight/2
n=16
aif=3.14159*2/n
Fori=1Ton
xi=r*Cos(i*aif)+x0
yi=r*Sin(i*aif)+y0
Forj=iTon
xj=r*Cos(j*aif)+x0
yj=r*Sin(j*aif)+y0
Line(xi,yi)-(xj,yj),QBColor(i-1)
PSet(xi,yi)
Printi-1
Nextj
Nexti
EndSub
PrivateSubForm_Load()
Print"要求:
";
Print"1.将圆周等分成16份;"
Print"2.每个等分点要标记成0-16的数字;"
Print"3.按样本图的图案画图。
"
EndSub
附图:
二、加密
Functioncode(ByVals$,ByValkey%)
DimcAsString*1,iAsc%
code=""
Fori=1ToLen(s)
c=Mid$(s,i,1)
SelectCasec
Case"A"To"Z"
iAsc=Asc(c)+key
IfiAsc>Asc("Z")TheniAsc=iAsc-26
code=code+Chr(iAsc)
Case"a"To"z"
iAsc=Asc(c)+key
IfiAsc>Asc("z")TheniAsc=iAsc-26
code=code+Chr(iAsc)
CaseElse
code=code+c
EndSelect
Nexti
EndFunction
PrivateSubclose_Click()
Form11.Hide
Form1.Show
EndSub
PrivateSubJiami_Click()
Text2=code(Text1,2)
EndSub
PrivateSubopen_Click()
CommonDialog1.Action=1
Text1.Text=""
OpenCommonDialog1.FileNameForInputAs#1
DimcounterAsInteger
Dimworkarea(25000)AsString
ProgressBar1.min=LBound(workarea)
ProgressBar1.max=UBound(workarea)
ProgressBar1.Visible=True
ProgressBar1.Value=ProgressBar1.min
Forcounter=LBound(workarea)ToUBound(workarea)
workarea(counter)="initialvalue"&counter
ProgressBar1.Value=counter
Nextcounter
DoWhileNotEOF
(1)
LineInput#1,inputdata
Text1.Text=Text1.Text+inputdata+vbCrLf
Loop
Close#1
EndSub
PrivateSubsave_Click()
CommonDialog1.FileName="a1.txt"
CommonDialog1.DefaultExt="txt"
CommonDialog1.Action=2
OpenCommonDialog1.FileNameForOutputAs#1
Print#1,Text2.Text
Close#1
EndSub
三、解密
FunctionUnCode(ByVals$,ByValkey%)
DimcAsString*1,iAsc%
UnCode=""
Fori=1ToLen(s)
c=Mid$(s,i,1)
SelectCasec
Case"A"To"Z"
iAsc=Asc("c")-key
IfiAscUnCode=UnCode+Chr(iAsc)
Case"a"To"z"
iAsc=Asc(c)-key
IfiAscUnCode=UnCode+Chr(iAsc)
CaseElse
UnCode=UnCode+c
EndSelect
Nexti
EndFunction
PrivateSubclose_Click()
Form2.Hide
Form1.Show
EndSub
PrivateSubJiemi_Click()
Text2=UnCode(Text1,2)
EndSub
PrivateSubopen_Click()
CommonDialog1.Action=1
Text1.Text=""
OpenCommonDialog1.FileNameForInputAs#1
DimcounterAsInteger
Dimworkarea(25000)AsString
ProgressBar1.min=LBound(workarea)
ProgressBar1.max=UBound(workarea)
ProgressBar1.Visible=True
ProgressBar1.Value=ProgressBar1.min
Forcounter=LBound(workarea)ToUBound(workarea)
workarea(counter)="initialvalue"&counter
ProgressBar1.Value=counter
Nextcounter
DoWhileNotEOF
(1)
LineInput#1,inputdata
Text1.Text=Text1.Text+inputdata+vbCrLf
Loop
Close#1
EndSub
PrivateSubsave_Click()
CommonDialog1.FileName="a.txt"
CommonDialog1.DefaultExt="txt"
CommonDialog1.Action=2
OpenCommonDialog1.FileNameForOutputAs#1
Print#1,Text2.Text
Close#1
EndSub
四、蝴蝶飞舞
PrivateSubForm_Load()
Print"蝴蝶飞出窗体后重新定位到左下方再向右上方飞"
EndSub
PrivateSubTimer1_Timer()
StaticPickBmpAsInteger
IfPickBmp=0Then
Image1.Picture=Image2.Picture
PickBmp=1
Else
Image1.Picture=Image3.Picture
PickBmp=0
EndIf
Callmymove
EndSub
Submymove()
Image1.MoveImage1.Left+40,Image1.Top-25
IfImage1.Top<=0Then
Image1.Left=0
Image1.Top=2325
EndIf
EndSub
图:
五、文本编辑
PrivateSubCopy_Click()
Clipboard.Clear
Clipboard.SetTextRichTextBox1.SelText
EndSub
PrivateSubCut_Click()
Clipboard.Clear
Clipboard.SetTextRichTextBox1.SelText
RichTextBox1.SelText=""
EndSub
PrivateSubExit_Click()
Form3.Hide
Form1.Show
EndSub
PrivateSubFont_Click()
CommonDialog1.Flags=cdlCFBothOrcdlCFEffects
CommonDialog1.Action=4
RichTextBox1.FontName=CommonDialog1.FontName
RichTextBox1.FontSize=CommonDialog1.FontSize
RichTextBox1.FontBold=CommonDialog1.FontBold
RichTextBox1.FontItalic=CommonDialog1.FontItalic
RichTextBox1.FontStrikethru=CommonDialog1.FontStrikethru
RichTextBox1.FontUnderline=CommonDialog1.FontUnderline
RichTextBox1.ForeColor=CommonDialog1.Color
EndSub
PrivateSubForm_Load()
Print"注:
"
Print"1.'打开'对话框的初始文件夹应是所要打开文件所在的"
Print"文件夹,将提供的xz.txt文件打开;"
Print"2.要实现将选定的内容格式化,必须在工具箱中添加"
Print"RichTextBox控件(MicrosoftRichTextboxComtrol6.0)"
Print"并在帮助菜单中查阅其字体设置的相关属性。
"
Print"3.TichTextBox中要设置垂直滚动条,文本格式化时要将选"
Print"定的内容格式化。
"
EndSub
PrivateSubLabel1_Click()
EndSub
PrivateSubopen_Click()
CommonDialog1.Action=1
RichTextBox1.Text=""
OpenCommonDialog1.FileNameForInputAs#1
DoWhileNotEOF
(1)
LineInput#1,inputdata
RichTextBox1.Text=RichTextBox1.Text+inputdata+vbCrLf
Loop
Close#1
EndSub
PrivateSubPaste_Click()
RichTextBox1.SelText=Clipboard.GetText
EndSub
PrivateSubPrint_Click()
CommonDialog1.Action=5
Fori=1ToCommonDialog1.Copies
Printer.PrintRichTextBox1.Text
Nexti
Printer.EndDoc
EndSub
SubRichTextBox1_MouseDown(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)
IfButton=2ThenPopupMenuEditMenu,vbPopupMenuCenterAlign
EndSub
PrivateSubsave_Click()
CommonDialog1.Action=2
Print#1,
Close#1
EndSub
PrivateSubSaveAs_Click()
CommonDialog1.FileName="default.Txt"
CommonDialog1.DefaultExt="Txt"
CommonDialog1.Action=2
OpenCommonDialog1.FileNameForOutputAs#1
Print#1,RichTextBox1.Text
Close#1
图:
六、统计
Dima(0To9),i%,min%,max%,ave%
PrivateSubCommand1_Click()
Dimj%,imin%,s%,t%
Form5.Cls
CurrentX=0
CurrentY=0
Fori=0To9
a(i)=Int(Rnd*90+10)
s=s+a(i)
Printa(i);
Nexti
ave=s/10
Fori=0To8
imin=i
Forj=i+1To9
Ifa(j)Nextj
t=a(i)
a(i)=a(imin)
a(imin)=t
Nexti
EndSub
PrivateSubCommand2_Click()
Print""
Fori=0To9
Printa(i);
Nexti
EndSub
PrivateSubCommand3_Click()
Print""
Printa(9);
EndSub
PrivateSubCommand4_Click()
Print""
Printa(0);
EndSub
PrivateSubCommand5_Click()
Print""
Printave;
EndSub
PrivateSubCommand6_Click()
Form1.Show
Form5.Hide
EndSub
PrivateSubForm_Load()
Print"将随机产生的10个2位数升序排序,并求出其最大值、最小"
Print"值和平均值。
"
EndSub
图:
七、小球跳动
DimdAsBoolean
PrivateSubForm_Load()
Shape1.Shape=3
Shape1.FillColor=vbRed
Shape1.FillStyle=0
Timer1.Interval=20
EndSub
PrivateSubTimer1_Timer()
IfNotdThen
IfShape1.TopShape1.Top=Shape1.Top+100
Else
d=Notd
EndIf
Else
IfShape1.Top>100Then
Shape1.Top=Shape1.Top-100
Else
d=Notd
EndIf
EndIf
EndSub
图:
八、计算器(彩票摇奖)
PrivateSubCommand1_Click()
Dimx,i%,a%(0To4),j%
Randomize
Fori=0To4
Do
a(i)=Int(Rnd*30)
Forj=0Toi-1
Ifa(i)=a(j)ThenExitFor
Nextj
LoopWhilej
x=a(i)&""&x
Text1=x
Nexti
EndSub
PrivateSubCommand2_Click()
Dimb%(0To4),k%,l%,q%,r%,yAsString,c
y=Trim$(Text1)
c=Split(y,"")
Randomize
n=0
Fork=0To4
Do
b(k)=Int(Rnd*30)
Forl=0Tok-1
Ifb(k)=b(l)ThenExitFor
Nextl
LoopWhilelNextk
Forq=0To4
Forr=0To4
Ifb(q)=c(r)Then
n=n+1
EndIf
Nextr
Nextq
Ifn=0Then
Cls
Print"编写一个简易的30选5彩票摇奖程序。
功能要求用户可以输入5个不同的整数,或"
Print"者通过‘机选’按钮,自动生成5个互不相同的随机数;单击‘摇奖’按钮,生成中奖号码,"
Print"并对用户输入或机选的彩票数字进行评奖,用户选对1个数字,获5等奖,选对2个数"
Print"获4等奖......程序运行界面如样本所示。
"
CurrentY=1900
CurrentX=300
Print"本期中奖号码为:
"&b(0);b
(1);b
(2);b(3);b(4)
Print""
CurrentX=300
Print"对不起,您没有中奖"
ElseIfn=1Then
Cls
Print"编写一个简易的30选5彩票摇奖程序。
功能要求用户可以输入5个不同的整数,或"
Print"者通过‘机选’按钮,自动生成5个互不相同的随机数;单击‘摇奖’按钮,生成中奖号码,"
Print"并对用户输入或机选的彩票数字进行评奖,用户选对1个数字,获5等奖,选对2个数"
Print"获4等奖......程序运行界面如样本所示。
"
CurrentY=1900
CurrentX=300
Print"本期中奖号码为:
"&b(0);b
(1);b
(2);b(3);b(4)
Print""
CurrentX=300
Print"恭喜了,您中了五等奖"
ElseIfn=2Then
Cls
Print"编写一个简易的30选5彩票摇奖程序。
功能要求用户可以输入5个不同的整数,或"
Print"者通过‘机选’按钮,自动生成5个互不相同的随机数;单击‘摇奖’按钮,生成中奖号码,"
Print"并对用户输入或机选的彩票数字进行评奖,用户选对1个数字,获5等奖,选对2个数"
Print"获4等奖......程序运行界面如样本所示。
"
CurrentY=1900
CurrentX=300
Print"本期中奖号码为:
"&b(0);b
(1);b
(2);b(3);b(4)
Print""
CurrentX=300
Print"恭喜了,您中了四等奖"
ElseIfn=3Then
Cls
Print"编写一个简易的30选5彩票摇奖程序。
功能要求用户可以输入5个不同的整数,或"
Print"者通过‘机选’按钮,自动生成5个互不相同的随机数;单击‘摇奖’按钮,生成中奖号码,"
Print"并对用户输入或机选的彩票数字进行评奖,用户选对1个数字,获5等奖,选对2个数"
Print"获4等奖......程序运行界面如样本所示。
"
CurrentY=1900
CurrentX=300
Print"本期中奖号码为:
"&b(0);b
(1);b
(2);b(3);b(4)
Print""
CurrentX=300
Print"恭喜了,您中了三等奖"
ElseIfn=4Then
Cls
Print"编写一个简易的30选5彩票摇奖程序。
功能要求用户可以输入5个不同的整数,或"
Print"者通过‘机选’按钮,自动生成5个互不相同的随机数;单击‘摇奖’按钮,生成中奖号码,"
Print"并对用户输入或机选的彩票数字进行评奖,用户选对1个数字,获5等奖,选对2个数"
Print"获4等奖......程序运行界面如样本所示。
"
CurrentY=1900
CurrentX=300
Print"本期中奖号码为:
"&b(0);b
(1);b
(2);b(3);b(4)
Print""
CurrentX=300
Print"恭喜了,您中了二等奖"
ElseIfn=5Then
Cls
Print"编写一个简易的30选5彩票摇奖程序。
功能要求用户可以输入5个不同的整数,或"
Print"者通过‘机选’按钮,自动生成5个互不相同的随机数;单击‘摇奖’按钮,生成中奖号码,"
Print"并对用户输入或机选的彩票数字进行评奖,用户选对1个数字,获5等奖,选对2个数"
Print"获4等奖......程序运行界面如样本所示。
"
CurrentY=1900
CurrentX=300
Print"本期中奖号码为:
"&b(0);b
(1);b
(2);b(3);b(4)
Print""
CurrentX=300
Print"恭喜了,您中了一等奖"
EndIf
EndSub
PrivateSubCommand3_Click()