vb程序设计试题:设计一个背单词的界面,读单词是以滚动字幕的形式让单词出来,这一步如何写代码?

 我来答
hejian511
2011-06-22 · TA获得超过846个赞
知道大有可为答主
回答量:1559
采纳率:0%
帮助的人:1485万
展开全部
使用控件 Timer1 Label1,label2,label3
Private num As Long '用来变换单词用的
Private word() As Variant '单词存放的数组

Private Sub Form_Load()
word() = Array("hello", "world", "I am ", "Visusl", "basic") '这里有一个五个单词的数组
Label1.AutoSize = True '自动调整大小
Timer1.Interval = 100 '调节速度用的
Label1.Caption = word(0) '初始化单词
'字符挨个渐隐效果
With Label2
.Width = Label1.Width
.Height = Label1.Height
.Caption = ""
.Left = 5000
.Top = Label1.Top
End With
With Label3
.Width = Label1.Width
.Height = Label1.Height
.Caption = ""
.Left = 500
.Top = Label1.Top
End With
End Sub

Private Sub Timer1_Timer()

'向左移动
If Label1.Left > 500 Then '这里是规定左边界
Label1.Left = Label1.Left - 100 '每次移动100TWip 可以调节
Else
Label1.Left = 5000 '超过左边界后还原位置
num = num + 1 '同时数组的变量+1 起到更改单词的作用
If num = UBound(word) + 1 Then num = 0 '如果单词全部滚动完毕,则重新开始
Label1.Caption = word(num) '更换单词
'根据不同长度的单词来实现隐藏效果
Label2.Width = Label1.Width
Label3.Width = Label1.Width
End If
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-06-20
展开全部
滚动字幕可以利用timer控件,每过一段时间让label左移或者右移,就有看似滚动的效果了
更多追问追答
追问
我知道利用Timer但是每次Label中都出来相同的单词,他不是一个单词一个单词的滚动,很是让我迷惑,望高手继续深入指点迷津,非常感谢!
追答
有个烂办法,你用两个label,分别装一个单词,设置只能看到一个label的宽度,移动,当label1完全看不到的时候,label1装入新单词,label2内容不变,继续移动,label1接在label2的后面滚动出现,label2看不到的时候装入新的单词,两个label循环移动,轮流装入新单词,烂方法一个,凑合看吧
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式