资源描述:
《vb实用代码,收藏!!》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、不错VB代码,收藏!!!收藏实现毫秒精度的延时'ModuleCode:OptionExplicitDeclareFunctionQueryPerformanceFrequencyLib"kernel32"(lpFrequencyAsLARGE_INTEGER)AsLongDeclareFunctionQueryPerformanceCounterLib"kernel32"_(lpPerformanceCountAsLARGE_INTEGER)AsLongTypeLARGE_INTEGERLowPartAsLongHighPartAsLongEndType'实现毫秒量级精确延时,(n毫秒)
2、PublicSubWait(ByValnAsLong)DimPFrequencyAsLARGE_INTEGERDimIntervalAsLARGE_INTEGERDimPriviousAsLARGE_INTEGERDimCurrentAsLARGE_INTEGER'获得高精度计数器的频率QueryPerformanceFrequencyPFrequency'获得高精度运行计数器的值QueryPerformanceCounterPriviousCurrent=PriviousInterval.LowPart=(PFrequency.LowPart/1000)*n'下面这句可以精确到微秒,好
3、像不太实用,也未必精确到如此地步'Interval.LowPart=(PFrequency.LowPart/1000000)*nInterval.HighPart=0'通过比较两次计数器的值差实现高精度延时DoWhile(Abs(Current.HighPart*2^16)+Current.LowPart)-_(Abs(Privious.HighPart*2^16)+Privious.LowPart)<_(Abs(Interval.HighPart*2^16)+Interval.LowPart)QueryPerformanceCounterCurrent'此句若省略,循环期间其它事就都不
4、能做了DoEventsLoopEndSub'FormCode:OptionExplicitDimlAsLongofficiallyestablishedonJuly1,2013,Yibincity,formerlyknownasthebus,integratedoriginalrongzhoubuscompanyinYibincityandMetrobuscompany,formedonlyinYibincityofaState-ownedpublictransportenterprises,thecompanyconsistsofoneortwo,thirdDivision.Integ
5、rationofpublictransportservicesisnotyetestablishedPrivateSubCommand1_Click()l=0'对照时钟计时(它并不很精确,这里仅对照而已)'间隔10毫秒已经很小了Timer1.Interval=10'延时Wait5000'停止计时Timer1.Interval=0MsgBox"你够狠,憋了我5000毫秒才放出来"EndSubPrivateSubForm_Load()'共三个控件:一个时钟,一个标签,一个按钮Command1.Caption="等待5000毫秒"Label1.AutoSize=TrueLabel1.Capti
6、on="这里是时钟计时"EndSubPrivateSubTimer1_Timer()l=l+10Label1.Caption=lEndSub-------------------------------------------------------VB未公开的三个函数ObjPtr,StrPtr,VarPtr'FormCode:'ObjPtr:返回对象实例私有域的地址'StrPtr:返回字符串第一个字的地址'VarPtr:返回变量的地址'使用对象浏览器(ObjectBrowser),你可以发现更多其他对象未公开的细节。'使用诸如金山游侠之类的游戏修改器可以跟踪到这个变量的地址(查9988
7、7766数值)'需生成EXE,这样容易操作,不会受到VB6干扰DimlAsLongPrivateSubCommand1_Click()Print"对象实例私有域:",ObjPtr(Command1)DimstrAsStringstr="字符串第一个字的地址:"Printstr,StrPtr(str)Print"----------------------------------"DimramidAsDoubleofficiallye