永发信息网

帮忙做个VB程序代码作业!

答案:5  悬赏:70  手机版
解决时间 2021-07-20 18:24
刚上VB课,老师布置了一个期中考试题目:在VB窗体中添加一个标件,标件上写着“求学到渝工,事业必成功”,运行之后要有以下效果:字体从右向左飘,飘到左边消失,接着又自动从右向左飘,以此循环;或者字体从左下角以步步高的方式飘到右上角。二者效果都要做出来? 挺吓人啊,我们刚刚来读大一,学了没多久就做这题目啊。麻烦各位有能人帮帮忙了!谢谢!
最佳答案

添加个窗体,加个TIMER控件,复制一下代码,2个问题都处理了


Private Sub Form_Load()
Label1.Caption = "求学到渝工,事业必成功"
Label1.Left = Me.Width
Label2.Left = Me.Width
Label2.Top = Me.Height
Timer1.Interval = 100
End Sub


Private Sub Timer1_Timer()
If Label1.Left <= Me.Width Then Label1.Left = Label1.Left - 100
If Label1.Left <= -Label1.Width Then Label1.Left = Me.Width


If Label2.Left <= Me.Width Then Label2.Left = Label2.Left - 100
If Label2.Left <= -Label2.Width Then Label2.Left = Me.Width


If Label2.Top >= 0 Then Label2.Top = Label2.Top - 80


If Label2.Top <= 0 Then Label2.Top = Me.Height
End Sub


全部回答

帮人做作业是不对的,不过你是大学生,就帮你一次吧。

建一个VB窗口,名字叫form1,然后将下面的代码粘贴到代码区就OK了,运行后会有3种跑动效果。

Dim WithEvents myLAB As Label Dim WithEvents myTIM As Timer Dim byRun As Boolean Dim runType As Integer Private Sub Form_Load() byRun = False runType = 0 Set myLAB = Controls.Add("VB.Label", "myLAB") Set myTIM = Controls.Add("VB.Timer", "myTIM") myLAB.AutoSize = True myLAB.Caption = "求学到渝工,事业必成功" myLAB.Top = Form1.Height / 2 myLAB.Left = Form1.Width / 2 myLAB.Visible = True myTIM.Enabled = True myTIM.Interval = 10 End Sub

Private Sub myTIM_Timer() If byRun = False Then Randomize (Timer) runType = Rnd(Timer) * 100 Mod 3 byRun = True Select Case runType Case 0 myLAB.Left = Me.Width Randomize (Timer) myLAB.Top = Rnd(Timer) * 1000000 Mod Me.Height Case 1 myLAB.Top = Me.Height Randomize (Timer) myLAB.Left = Rnd(Timer) * 1000000 Mod Me.Width Case 2 myLAB.Left = Me.Width myLAB.Top = Me.Height End Select Else Dim speedivt As Integer speedivt = 10 '速度因子,越大速度越快,但会产生更大的跳动感 Select Case runType Case 0 If myLAB.Left > 0 - myLAB.Width Then myLAB.Left = myLAB.Left - speedivt Else byRun = False End If Case 1 If myLAB.Top > 0 - myLAB.Height Then myLAB.Top = myLAB.Top - speedivt Else byRun = False End If Case 2 If (myLAB.Left > 0 - myLAB.Width) And (myLAB.Top > 0 - myLAB.Height) Then myLAB.Left = myLAB.Left - speedivt myLAB.Top = myLAB.Top - speedivt Else byRun = False End If End Select End If End Sub

添加个窗体,加个TIMER控件,复制一下代码,2个问题都处理了

Private Sub Form_Load() Label1.Caption = "求学到渝工,事业必成功" Label1.Left = Me.Width Label2.Left = Me.Width Label2.Top = Me.Height Timer1.Interval = 100 End Sub

Private Sub Timer1_Timer() If Label1.Left <= Me.Width Then Label1.Left = Label1.Left - 100 If Label1.Left <= -Label1.Width Then Label1.Left = Me.Width

If Label2.Left <= Me.Width Then Label2.Left = Label2.Left - 100 If Label2.Left <= -Label2.Width Then Label2.Left = Me.Width

If Label2.Top >= 0 Then Label2.Top = Label2.Top - 80

If Label2.Top <= 0 Then Label2.Top = Me.Height End Sub

提醒你下很简单利用坐标和循环语句就可以实现

我现在上课没时间帮忙瞎逛逛- -!

设置成一个死循环他就会一直动了

从右向左的代码如下:

添加一个label1和timer

Private Sub Form_Load() Label1.Caption = "求学到渝工,事业必成功" Label1.Left = Me.Width Timer1.Interval = 100 End Sub Private Sub Timer1_Timer() If Label1.Left <= Me.Width Then Label1.Left = Label1.Left - 100 If Label1.Left <= -Label1.Width Then Label1.Left = Me.Width End Sub

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
身子长腿短?力裆特别低?
三星哪一款既实惠质量又好
QQ抢车位能否查到自己曾经贴过谁的条?
高手,在不在,刚才那个问题,还有一些详细的过
N72怎么防止刷机后变成英文?
枣阳市襄樊雪洛可店地址在哪里啊
QQ飞车求一个车队名?
大学兼职好不好
QQ影音好用么?哪个播放器最好用?
奶爸荣誉祝福多少级,第五章奶爸的武器祝福还
拍拍的信誉度怎么会增加的快?
哪里有竖笛的简谱
我练街舞breaking 里的 鞍马为什么都练了一个
已知函数f(x)的定义域为(﹣1,1),求满足
战地之王谁能给我个激活码
推荐资讯
我想开通游戏人生点开
谢霆锋的几部新片中,大家都看好哪些?
诺基亚n70有什么还用法
麻城市黄冈中国移动(麻城市人民医院西南)地址
人的头发一个月一般能长多长
求一份中文说明书!
有带涵字的网名吗?
大象的种类/生活地区/生活习性/主要食物
平光鏡多少錢
广州开发区(东区)有没有商铺出租?
荆州区荆州御健康复理疗我想知道这个在什么地
有哪位高手能帮我开通游戏人生啊!我的QQ是39
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?