网站首页  |  业界新闻  |  技术文章  |  视频教程  |  下载频道  |  程序源码  |  个人空间  |  编程论坛
 
学习型 ASP/PHP/ASP.NET 主机 30元/年 全能 ASP/PHP/ASP.NET 主机,支持月付 专业 MSSQL 数据库空间,支持月付 专业 MySQL 数据库空间,支持月付
发新话题
打印

怎么让时钟循环着单击按钮?

怎么让时钟循环着单击按钮?

我有一按钮、一个时钟、一个IMAGE图像框用来放图象。
想要的结果是。时钟间隔1秒后就自动的单击按钮一次 ,而按钮被单击后就换一张新的图像(应该是刷新上一张后)。
我想不出来被单击时的按钮的属性该怎么写
这个时钟循环怎么写呀?请高手指点一二。

TOP

我给你个思路.代码就不写了.
不用按钮.就两个控件行了.
一个是Timer
一个是Image
把Timer的Interval属性设置你要变换图像的相隔时间,单位是毫秒.  你要一秒就填 1000 ,这也是默认值.
Enabled的属性设为True                        
在它的OnTimer事件里写变换图像的代码.就行了.

回答你一个问题.
按钮单再击事件是: Button1.Click;

TOP

我用button1.click:=timer.interval时就报前面个事件出错.所以才不明白到底怎么写它的格式.
我用那方法是因为按钮还有别的作用.

TOP

你的事件怎么能赋值呢?
按我刚才说的.
不过先把Timer的属性设为假.

TOP

还没写完.就按到发送了.继续.
在按钮的单击事件里写.
Timer1.Enabled:=Ture;
它就开始循环了.
Timer1.Enabled:=False;
就停止.
如果想让它每隔一秒就按一次.
就在OnTimer的事件里写
Button1.Click;
就行了.

TOP

也可以通过消息机制,不过你这样刷新太快,不知道会不会让程序跑的越来越慢,
建议采用线程技术考虑这样的加载图片的问题。
大家都是朋友,有空就来坐坐!

TOP

建议增加一个复杂框,标题(Caption)叫“自动播放”或其他类似,在属性面板中将其Checked属性设置为false,即取消“选中”,另外在其Click事件中写上这么一行:
Timer1.Enabled:=CheckBox1.Checked;

    还有,在属性面板中将Timer1的Enabled的属性设置为false,这样,打开相应窗体时不会自动播放,选中了这个复选框时,启用Timer1,自动播放图片;取消选中时,禁用Timer1,结束自动播放。

    Timer控件比较占用资源,另外连续加载图片也会比较占内存,CPU使用率90%以上是正常事。

    1秒时间太短了,可能图片还没加载完就又切换下一张了。我自己做的3秒都还太短,因为加载一些2M多的数码相机原图比较慢……

    还可以考虑自动播放时间间隔可供用户输入,以秒为单位,但要限制,只能输入数字,或者用选择的形式。
爱我至爱,至死不渝!

TOP

谢谢hackergirl 的解惑..问题是解决了.
可是用了才发现后面二位说的没错,这思路对内存消耗太快了.
不过还是学会了在时钟里的一点用法.
三Q各位了.

TOP

继续加油,我也是刚学.
所以很多东西我都不知道.
我只把我懂的说出来.

TOP

发新话题