最简单的,就是在上面放一个label,用Timer定时器控件控件这个label的移动
网站设计制作过程拒绝使用模板建站;使用PHP+MYSQL原生开发可交付网站源代码;符合网站优化排名的后台管理系统;网站设计、成都网站制作收费合理;免费进行网站备案等企业网站建设一条龙服务.我们是一家持续稳定运营了十年的创新互联网站建设公司。
示例:
PrivateSubForm_Load()
'//预先设定要显示的内容
content="滚动字幕示例控制文本的循环滚动"
'//获取内容长度
length=Len(content)
'//label1控件,手动调整
'//接着需要选择字体大小
SetMe.Font=Label1.Font'//方便借用Form.TextHeight方法
Dimfont_heightAsLong,font_widthAsLong,sizeAsLong
size=Label1.Font.size
font_height=Me.TextHeight("循环滚动")
font_width=Me.TextWidth("循环滚动")
Whilefont_height=Label1.HeightAndfont_width=Label1.Width
size=size+1
Label1.Font.size=size
font_height=Me.TextHeight("循环滚动")
font_width=Me.TextWidth("循环滚动")
Wend
Label1.Font.size=size-1'//选择最合适的字体大小
pos=1'//从第一个字符开始读取
EndSub
PrivateSubCommand1_Click()
Timer1.Interval=1000'1000毫秒执行一次
EndSub
PrivateSubTimer1_Timer()
DimsizeAsLong,tempAsString
'//每次显示5个长度单位的内容
size=length-pos'//得到截取的长度大小
Ifsize4Then'//当不足5个长度单位时
temp=Mid(content,pos,size+1)
temp=tempMid(content,1,4-size)
pos=5-size
Else
temp=Mid(content,pos,5)
pos=pos+5
EndIf
Label1.Caption=temp'//把截取的文本内容显示出来
EndSub
扩展资料
VB设计自动滚动字幕窗体
DimDireAsString
'窗体Load事件
PrivateSubForm_Load()
Dire="向左"
EndSub
'定时器事件
PrivateSubTimer1_Timer()
DimNewColorAsLong
Randomize
NewColor=RGB(Rnd()*256,Rnd()*256,Rnd()*256)
Label1.ForeColor=NewColor
IfDire="向左"Then
Label1.Left=Label1.Left-10
IfLabel1.Left0ThenDire="向右"
ElseIfDire="向右"Then
Label1.Left=Label1.Left+10
IfLabel1.Left+Label1.WidthMe.ScaleWidthThenDire="向左"
EndIf
EndSub
Dim a Const s = "你好,欢迎你!!" Private Sub Command1_Click() Cls If Command1.Caption = "停止" Then Timer1.Enabled = False Command1.Caption = "开始" Else Timer1.Enabled = True Command1.Caption = "停止" a = Me.ScaleWidth End If End Sub Private Sub Form_Load() Command1.Caption = "开始" Timer1.Interval = 200 Timer1.Enabled = False End Sub Private Sub Timer1_Timer() Cls a = a - 100 If a + TextWidth(s) 0 Then a = Me.ScaleWidth CurrentX = a CurrentY = 500 Me.ForeColor = QBColor(Int(Rnd * 15)) Print s End Sub
private void button1_Click(object sender, EventArgs e)
{
Timer t = new Timer();
t.Interval = 50;
int n = 0;
int w = this.label1.Width;
t.Tick += (s, ee) =
{
n += 10;
int d = this.Width - w;
this.label1.Left = n % d;
};
t.Start();
}
1、在窗体上画上计时器控件timer1
和
label控件label1.
2、设置timer1的enable属性为false,interval属性为500,即500毫秒执行一次
3、设置label1的autosize属性为true,表示label1根据caption属性的内容自动调整大小。
4、在代码窗口里,写出以下代码:
Dim
ChuShiWeiZhi
As
Integer'表示label1的初始位置
Private
Sub
Command1_Click()
Timer1.Enabled
=
True'使计时控件工作
End
Sub
Private
Sub
Form_Load()'窗体加载时,记录label1的位置,并初始化label1的内容,注意vbCrLf表示换行
ChuShiWeiZhi
=
Label1.Top
Label1.Caption
=
"请"
vbCrLf
"采"
vbCrLf
"纳"
vbCrLf
"我"
vbCrLf
"的"
vbCrLf
"答
"
vbCrLf
"案"
vbCrLf
"已"
vbCrLf
"通"
vbCrLf
"过"
vbCrLf
"测"
vbCrLf
"试"
End
Sub
Private
Sub
Timer1_Timer()
Label1.Top
=
Label1.Top
-
200'没执行一次使label1的top减少200缇,200可以修改为任意你要的值
If
Label1.Top
+
Label1.Height
Then'当label1完全移出窗体时,令它top再次变为初始的值,实现循环
Label1.Top
=
ChuShiWeiZhi
End
If
End
Sub
通过测试,请采纳答案,我是vb编程团队成员,很高兴为您服务!