VB实验报告

一、   实验目的:通过此次的实验是为了让我们更加的了解VB,更加深入的去探索学习VB的奥妙。同时,此次试验的目的不仅仅只限于此,更重要的是让我们养成自主学习的习惯,培养我们独立学习的能力。让我们适应大学的学习方法:不是被迫的学习,而是自己主动的学习。

二、   实验内容:1、显示各位数

Private Sub Command1_Click()
Dim x As Integer

Dim a, b, c, d

x = 1234

a = x \ 1000 Mod 10

b = x \ 100 Mod 10

c = x \ 10 Mod 10

d = x Mod 10

Print a, b, c, d

For n = 100 To 999
a = n \ 100
b = (n - a * 100) \ 10
c = n Mod 10
If n = (a ^ 3 + b ^ 3 + c ^ 3) Then Print n
Next

End Sub

         2、大小写转化

Dim x as String

Private Sub Form_Load()

    x=Text1.Text

End Sub

Private Sub Command1_Click()

    Text1.Text=Ucase(x)

End Sub

Private Sub Command2_Click()

    Text1.Text=Lcase(x)

End Sub

Private Sub Command3_Click()

Text1.Text=x

    End Sub

          3、随机数

① 在通用声明段中,声明一个模块级的数组,代码如下:

Dim a(1 To 4,1 To 4)As Integer

②在“代码”窗口中选择Form_Load事件,编写事件过程代码如下:

Private Sub Form_Load()

    Dim p As String

    Randomise

        P=""

    For i=1 To 10

        Do

          x=Int(Rnd*90)+10

           yes=0

           For j=1 To i-1

                Ifx=a(j)Then yes=1:Exit For '防止出现重复的数

           Next

       Loop While yes=1

       a(i)=x

       p=p & Str(a(i))& ","

    Next

Label1.Caption=Ltrim(Left(p,Len(p)-1))

Label2.Caption=""

  End Sub

③在“代码”窗口中选择Command1控件的Click事件,编写事件过程代码如下:

Private Sub Command1_Click()

    Form_Load

End Sub

④在“代码”窗口中选择Command2控件的Click事件,编写事件过程代码如下:

Private Sub Command2_Click()

    p=""

    For i=1 To 9

        For j=1 To 10-i

            Ifa(j)<a(j+1)Then  '“<”改为“>”,则为升序

               t=a(j):a(j)=a(j+1):a(j+1)=t

            End If

         Next

       Next

       For i=1 To 10

           p=p &Str(a(i))&","

       Next

       Label2.Caption=Ltrim(Left(p,Len(p)-1))'去掉字符串前空格及最后一个“,”

End Sub

         4、写Blog,上机实现能动的图形

Private Sub Command1_Click ()

Show

Me Scale (0, 0)-(18, 8)

Me. Auto redraw =True

Me. Draw Mode =2

Circle (3, 4), 3, VB Red

Me. Auto Redraw =false

Line (7, 1) –step (4, 6) .VB Green .B

Line (13, 7) –step (4, 0).VB Blue

Line step (0, 0)  –step (-2, -6). VB Blue

Line step (0, 0)  –step (-2, 6). VB Blue

End sub


              5、让程序随机不定时间生成随机种类的图形,并且要生成多个图形

PrivateSub Form_Load()

Command1.Caption = "随机画圆"

Command2.Caption = "随机文字"

Command3.Caption = "立体图形"

Command4.Caption = "随机图像"

Command5.Caption = "退出"

Form1.ScaleMode = 1

Picture1.ScaleMode = 1

Picture2.Picture = LoadPicture

EndSub  '随机画圆动画

PrivateSub Command1_Click()

Dim XPos, YPos

Picture1.Cls

Do nn = Int(100 * Rnd)

If nn > 0 Then

Picture1.DrawWidth = nn

End If

XPos = Rnd * Picture1.ScaleWidth

YPos = Rnd * Picture1.ScaleHeight

Picture1.PSet (XPos, YPos), RGB (Rnd * 256, Rnd * 256, Rnd *256)

DoEvents

Loop

EndSub

'随机文字动画

PrivateSub Command2_Click()

Picture1.Cls

Do nn = Int(45 * Rnd)

If nn > 0 Then

Picture1.FontSize = nn

End If

Picture1.CurrentX = Rnd * Picture1.ScaleWidth - 1000

Picture1.CurrentY =Rnd * Picture1.ScaleHeight

Picture1.ForeColor =RGB(Rnd * 256, Rnd * 256, Rnd * 256)

Picture1.Print "随机 OK!"

n = n + 1

If n > 50 Then n = 0

Picture1.BackColor = QBColor(Rnd * 15)

End If

DoEvents

Loop

EndSub

'立体随机动画

PrivateSub Command3_Click()

Dim m, n

Picture1.DrawWidth = 1

Picture1.BackColor = RGB(210, 150, 0)

Picture1.Cls

Do

m = Rnd * Picture1.ScaleWidth

n = Rnd * Picture1.ScaleHeight - 500

For i = 0 To Rnd * 800

Picture1.Line(m,n+2.5*i)-(m+i/2,n+2*i),RGB(180,180,180)

Picture1.Line(m,n+2.5*i)-(m-i/2,n+2*i),RGB(80,80,80)

Next i

DoEvents

Loop

EndSub

'随机图像显示

PrivateSub Command4_Click()

Do

xx = Rnd * Picture1.Width

yy = Rnd * Picture1.Height

Picture1.PaintPicture Picture2.

Picture, xx, yy,

Picture2.Width, Picture2.Height

DoEvents

Loop

EndSub

'退出按钮

PrivateSub Command5_Click()

End

EndSub

三、   心得体会:就五个实验,却把我要折磨疯了。因为基础的不会,那些专业术语也不懂,程序根本就设计不下去,设计到最后连我自己都不知道我设计了什么。归根结底就是没有看书的后果,就是没有把书看透。而且我各种搜查、各种询问都没有找到满意的结果。终于让我明白了一个道理:做什么事都要脚踏实地的,一步一步地走。俗话说得好“千里之行,始于足下。”人生就如VB程序设计一样,成功的阶梯需要你踏实的向上走,如果你有一步没有踏稳,你将会摔得粉身碎骨。所以,从现在起,我们就应该从长远角度考虑,从未来的角度出发,踏实的做好身边的每一件小事,为日后的成功打下良好的基础。为了以后的生活,从现在起就要努力奋斗、奋力拼搏。

四、   遇到的问题及解决方法:1、遇到的问题:程序不会设计;VB的基础语言不懂;不知道怎样从网上找资料。

                      2、解决方法:上网查(百度、csdn网站、腾讯…);问同学;和同学一起交流、讨论。

五、   没有解决的问题:还是不会自己编写程序;编好的程序错误的地方自己不会调试。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值