天天看點

evb 裡面支援DoEvents

evb   裡面不支援doevents,我在www.devbuzz.com裡面找到了答案  

  'listing   1   -   doeventsce  

  declare   function   peekmessage   lib   "coredll.dll"   alias   "peekmessagew"   _  

  (byval   msg   as   string,   byval   hwnd   as   long,   byval   wmsgfiltermin   as   integer,   _  

  byval   wmsgfiltermax   as   integer,   byval   wremovemsg   as   integer)   as   boolean  

  declare   function   translatemessage   lib   "coredll.dll"   (byval   msg   as   string)   as   boolean  

  declare   function   dispatchmessage   lib   "coredll.dll"   alias   "dispatchmessagew"   _  

  (byval   msg   as   string)   as   boolean  

  public   const   pm_remove   =   1  

  'enof   listing   1   -   doeventsce  

  public   sub   doeventsce()  

      dim   msg   as   string  

      msg   =   string(18,   chr(0))  

      '   get   message   from   queue   and   dispatch   it  

      if   peekmessage(msg,   0,   0,   0,   pm_remove)   then  

          translatemessage   (msg)  

          dispatchmessage   (msg)  

      end   if  

  end   sub