VB的TIMER事件的问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 05:52:42
请问我在VB的TIMER事件中写了一个j=j+1;text1.text=j;为什么总是显示1
我要用TEXT1显示J
j=(text1.text)+1 成什么了,而且也没有成功

我的代码和二楼的一样,二楼的应该试验一下,这个代码根本不行啊
而且J是在模块中声明的,应该没有问题

在属性里设置Timer控件的Interval不也一样吗,我确定TIMER是工作的,如果用随机数就能实现数字的滚动,可不用随机数怎么实现呢

没错,你这么写就是1
要改得话,你得j=(text1.text)+1
这样才能累加

2】你根本就没有想我说的,你要么把J设置成一个公共变量,要么就写我前面的,比如:
j=val(Text1.Text)+1;
Text1.Text=j

你没有贴代码

不知道你错在哪里

写了个例子 你看看吧

Dim j As Integer

Private Sub Form_Load()
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
j = j + 1
Text1.Text = j
End Sub

我试验过没有问题!~

哦,我知道了,问题出现在你的j的定义上。你在模块定义的时候,是不是用public J as integer呢?
如果你使用dim J as integer那就不行,要改成public J as integer

因为没一次执行改过程时j会恢复初始直,要在最开始的地方声明变量j

"dl_会飞的青蛙"回答肯定可以,把代码拷上去就可以用了!!
我再提供一个代码:
再窗体级定义:
Dim j as Integer

Private Sub Form_Load()
Timer1.Interval = 300
End Sub

Private Sub Timer1_Timer()
j = j + 1
Text1.Text = j
End Sub

绝对可以的,Timer1.Interval设置不能太大了,要不反应慢。
如果不行,你肯定在程序的其他地方引了变量j,把他复位了;要不是这样,肯定可以。
不行的话,你过来把我砍了!!!!

本人试验了2楼的代码,是正确的啊