×

vb sleep函数

vb sleep函数(您好能帮我解释一vb的sleep函数吗)

admin admin 发表于2024-01-22 00:33:36 浏览38 评论0

抢沙发发表评论

各位老铁们,大家好,今天由我来为大家分享vb sleep函数,以及您好能帮我解释一vb的sleep函数吗的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

本文目录

您好能帮我解释一vb的sleep函数吗

函数声明:Private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)参数:dwMilliseconds:等待的时间,以毫秒为单位。1秒=1000毫秒。

vb中怎么使用api实现延时功能

VB6.0可以使用Api函数Sleep来实现延迟功能。

  1. Sleep函数,暂停当前线程指定的时间间隔执行。

    用法:

    Sleep (S)

    S,以毫秒为单位的睡眠时间

  2. 通过VB自带的API浏览器,在模块中添加:

    Private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)

  3. 代码中用

        Sleep (1000) ‘延迟100毫秒执行按钮Click事件

        Private Sub Command1_Click()

  4. 强烈建议使用Timer控件来实现延迟执行命令,它不会引起暂停等待,而不执行在延迟中发生的其它事件。

  5. 使用 Timer 控件

    Timer 控件响应时间的流逝。它们独立于用户,编程后可用来在一定的时间间隔执行操作。此控件的一个一般用处是检查系统时钟,判断是否该执行某项任务。对于其它后台处理, Timer 控件也非常有用。

vb Sleep 的应用问题

你说的是延时程序吧...我曾写过按键精灵,里面也有延时程序,有些心得与你分享一下吧.sleep是一个延时函数,但这个函数有一个致命的缺点:就是在等待的时候,整个程序都处于一个不接受任何输入的情况,整个程序就像死了一样,只有等延时的时间到了以后,程序才会继续接收系统响应。正是这个原因,我放弃了这个方案!那么还有什么办法让程序原地踏步,达到延时的效果呢?我想到的是循环,但大家都知道循环的速度太快,一秒钟可以循环几千次,并且时间不好控制。那么就只有不停地读系统的时间了。比方说:不停地循环读系统当前的时间,这个还是容易的吧NOW函数都可以读出来,然后,在这个时间上加上你要延时的常量,比如说延时3秒,就加上3,然后不停匹配时间,如果小于或等于当前时间,说明时间到了,如果大于就不停地循环,达到了延时的效果。在这个过程中,要不停地释放控制权给系统,用DoEvents函数;这个方案也有缺点,具体什么缺点,楼主自己去试试就知道了。以上原理你知道了,实现起来应该是非常简单的。不超过六行代码就可以了。实在不懂就加我吧。

vb中的sleep

在窗体上增加一个按钮和一个文本框:VB中的sleep用法如下:Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) ’引用APIPrivate Sub Command1_Click() Text1.Text = "123456789"DoEvents ’少了此命令会将程序开始都暂停了,所以必须加上去Sleep 2000 ’暂停2秒Label1.Caption = "321"End Sub

为什么vb调用sleep函数无效果

Sleep 50000试试可能是你后面的数值设置的太小了,感觉不到 还有就是,演示函数Sleep是个API函数,必须对它初始化,在最前面全局那里Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) ’延时函数

VB延时函数是什么意思

在程序流程中经常要延时一段时间后再继续往下执行,在VB中常用的有以下几种方法(因为Timer控件打乱了程序的流程所以一般不用它): 1.使用Windows API函数Sleep 新建一个工程,添加一个TextBox控件和一个CommandButton控件,再将以下代码复制到代码窗口: Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Private Sub Command1_Click() Text1 = "sleep begin" Sleep 3000 Text1 = "sleep end" End Sub 按F5执行,按下Command1按钮,程序停止执行,3秒钟内不对用户的操作做出反应,并且Text1里的内容并没有发生改变。这是怎么回事呢?原来,Sleep函数功能是将调用它的进程挂起dwMilliseconds毫秒时间,在这段时间内,此进程不对用户操作做出反应,程序中虽然将Text1的Text属性改成Sleep begin,但还没等完成对屏幕的更新进程就被挂起了,对用户来说程序象是死机一样。所以这种方法虽然简单,但并不适用。 2.使用Timer()函数 这是用的最多的一种方法,也是在VB联机手册中所推荐的。添加一个CommandButton控件,再将以下代码添加到代码窗口中: Private Sub Command2_Click() Dim Savetime As Single Text1 = "Timer begin" Savetime = Timer ’记下开始的时间 While Timer 《 Savetime + 5 ’循环等待 DoEvents ’转让控制权,以便让操作系统处理其它的事件 Wend Text1 = "Timer ok" End Sub 这种方法虽然也很简单,但却有有一个致命缺陷,那就是Timer函数返回的是从午夜开始到现在经过的秒数。所以Timer返回的最大值也只是60*60*24-1秒,如果从一天的23:59:58秒开始计时等待5秒,那么程序会永远地循环下去。要进行改良,就要加上判断是否又开始了新的一天,那岂不是太麻烦。下面给大家推荐另一个Windows API函数。 3.使用Windows API函数timeGetTime() timeGetTime函数没有参数,返回值是从开机到现在所经历的毫秒数,这个毫秒数是非周期性递增的,所以不会出现Timer()函数出现的问题,而且这种方法的精确性高于上一种方法。添加一个CommandButton控件,再将以下代码添加到代码窗口中: Private Declare Function timeGetTime Lib "winmm.dll" () As Long Private Sub Command3_Click() Dim Savetime As Double Text1 = "timeGetTime begin" Savetime = timeGetTime ’记下开始时的时间 While timeGetTime 《 Savetime + 5000 ’循环等待 DoEvents ’转让控制权,以便让操作系统处理其它的事件 Wend Text1 = "timeGetTime end" End Sub

关于vb sleep函数,您好能帮我解释一vb的sleep函数吗的介绍到此结束,希望对大家有所帮助。