荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: scanf (carefully), 信区: SoftDev
标  题: [合集]VB的两个小问题
发信站: 荔园晨风BBS站 (Fri May  7 21:39:28 2004), 站内信件

georgehill (佐治·希尔【来自大富翁的小美】) 于Fri Apr 14 08:59:49 2000提到:

     怎样让程序在执行了一条语句后等待一段时间再执行下一条语句?本以为有
 wait类似的语句,但没找到。
     sendkeys语句中要输入"<-"应该怎样输入,按照MSDN和书上的都说是{LEFT},
 但试了一下不行。

Jobs (温少) 于Fri Apr 14 10:18:46 2000提到:

VB一般是不检查大小写的,但是在sendkeys的语句中,你必须遵循大小写,
你试试看,如果不行再说!



Pazu (质变) 于Fri Apr 14 10:33:34 2000提到:

        没有就自己编啦.
大概是

ASD=time();   //什么也好啦,总之是取当前时间.
while(1)
   {
     BSD=time();
     if(bsd-asd>="你要的时间") break;
   }
       当然,这只是算法啦,有BUG的,你找出来看看.

再不是就

  for(i=0;i<=65535;i++)
    for(j=0;j<=65536;j++)
      a=a;
总之延时很简单啦.定时有点意思.



Jobs (温少) 于Fri Apr 14 11:58:12 2000提到:

有没搞错,这样延迟还行,这样占系统资源很厉害的,......

如果在VB中,需要延时,的时候,应该使用doevents语句,具体用法看MSDN。

在VC中就不知道了,不懂........



georgehill (佐治·希尔【来自大富翁的小美】) 于Fri Apr 14 12:00:37 2000提到:

     第二种方法太耗费CPU。


georgehill (佐治·希尔【来自大富翁的小美】) 于Fri Apr 14 12:22:13 2000提到:

     我是遵循的了,{ENTER}这些都可以,就是不清楚为什么{LEFT}不可以。


Pazu (质变) 于Fri Apr 14 12:35:31 2000提到:

        都说有BUG啦,想CPU响应高一点就在循环里嵌入消息检测啦.而且最大的BUG
 是在bsd-asd这句上.想想到了23:59:59.99到0:0:0.0的情况啦.资源占用问题我不会
 解决,TANG来说说.当然,要自己写的程序啦,不然用函数的话不知道原理.



Jobs (温少) 于Fri Apr 14 18:57:24 2000提到:

如果在VB中,需要延时的办法是有很多的,用Timer control是其中的一种方法,
但是Timer的Interval属性最大只能是65535,也就是说,只能延时1分钟,但是
通过一些附加的办法仍然可以延时很久,并且占用资源很少。



tang (独孤九剑〖玄铁重剑〗) 于Fri Apr 14 21:04:18 2000提到:

Windows的API:Sleep(interval)不就行了?
VB应该也有Sleep这样的语句吧?我在家没装MSDN,装了的人查查就知道了!
要不占用系统资源就要达到所谓让权(CPU使用权)等待的要求,这在Windows
只能靠操作系统支持,所以要用API!


Jobs (温少) 于Fri Apr 14 21:46:44 2000提到:

VB中没有Sleep语句,不过有Doevents语句,相应的功能。



Pazu (质变) 于Sun Apr 16 21:17:59 2000提到:

        各位,我要原理~~~~~~~~知其然不知其所以然可不好.



Minatl ([3;38H[]到本站一游。) 于Sun Apr 16 21:53:52 2000提到:

  把线程挂起,等等再叫醒他


Pazu (质变) 于Wed Apr 19 17:56:40 2000提到:

        昨天看到一种最低级的方法,调用82XX系统时钟来响应.不过一点都不现实.
 难得要命,我看模式字和控制字都看傻了.



Mill (i myself) 于Thu Apr 20 00:24:22 2000提到:

it's 8253 and 8254, use ASM to program,
who use VB to do such thing?  hehe
        :P



peng (杨过) 于Sun May  7 20:41:07 2000提到:


自己写函数:
Public Function Delay(Min%,Secs%,Optional ByRef StopFlag) as Long
dim EndOfDelay
EndOfDelay=DateAdd("n",Mins,Now)
EndOfDelay=DateAdd("s",Secs,EndOfDalay)
Delay=0
Do While (Now<EndOfDelay)
DoEvents
if not IsMissing(StopFlag) then
  if StopFlag then
     Delay=1
     StopFlag=False
     exit do
  end if
end if
loop
end Function


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店