在一个窗体的调用中加入:
Private Sub Form_Load()
Me.BorderStyle = 1
End Sub
本来应该窗体变成不能改变大小,结果是毫无反应.了多次都不行.
但如果再加一行:
Me.Caption="%$$%%"
窗体边界马上变成不可改变. 如果把两个句子倒一下,Bordrstyle写在Caption句子后面,也无效。
为什么 ?Timer函数中,例如:
dim s as long
long = timer
if timer<long+0.5 then
Doevents
......我把0.5秒改成0.6以上,肯定好用,只要是小于0.5,这个句子等于白写。类似的问题我在KLP(一种小学生用的语言)中也遇到过,告别奇怪!难道是windowsXP时间本身有问题?
Private Sub Form_Load()
Me.BorderStyle = 1
End Sub
本来应该窗体变成不能改变大小,结果是毫无反应.了多次都不行.
但如果再加一行:
Me.Caption="%$$%%"
窗体边界马上变成不可改变. 如果把两个句子倒一下,Bordrstyle写在Caption句子后面,也无效。
为什么 ?Timer函数中,例如:
dim s as long
long = timer
if timer<long+0.5 then
Doevents
......我把0.5秒改成0.6以上,肯定好用,只要是小于0.5,这个句子等于白写。类似的问题我在KLP(一种小学生用的语言)中也遇到过,告别奇怪!难道是windowsXP时间本身有问题?
解决方案 »
- 请问:汉字怎样转化为ASCII码?
- 水晶报表9出错:“activex componet cant create object”
- 请高手介绍一下savepicture函数的用法,谢谢
- MSDATGRD.OCX控件过期问题
- access表加密码以后,用adodc打开时出错。
- 挑战性问题:如何用VB编制自删除程序。
- 太奇怪了,大家帮着出注意,是SQL2000的。
- vb访问SQL数据库问题
- 如何自己調用编译和连接器, 把 .vbp 文件 生成 .exe文件
- 谁有关于PDF的资料,可否介绍一下。
- 在VB6下如何实现继承,重载和多态----DynamicClassFactory (一)
- VB中是否提供了时区变换的方法?代码如何写?
Timer函数的最高精度大约可以达到0.016秒。 但一般不能获取这么高的分辨率,因为系统有其它程序在活动。系统把Timer的函数优先级定的比较低,实际应用中,其分辨率大约在0.1秒。建议用别的函数获取时间,如:GetTickCount
s= timer
Doevents
if timer<s+0.5 then
Doevents
......
long = timer
if timer<long+0.5 then
Doevents
......没看明白什么意思
-------------------------------------------
MSDN上说是BorderStyle是只读,但是楼主的测试结果是对的:单独设置BorderStyle不起作用,后面跟一条设置Caption的语句时,却起作用了。不知道VB在改变窗体的Style时,里面作了什么手脚。
看来在VB里,改变Caption属性的时候VB不仅仅只调用了SetWindowText函数,好像还调用了SetWindowLong函数,所以才会导致楼主发现的现象。为什么要这样做,也许只有微软知道。
所以 我觉得你这段程序该这样写
dim starttime,endtime,wait
starttime=timer'设置开始循环时间
waite=X'X是你想等待的时间
do while starttime+wait<timer '循环条件
stataments
loop
endtime=timer'纪录下结束循环时间
........
do while starttime+wait>timer
borderstyle确实如此,可以算是楼主的重大发现,我一直以为borderstyle是只读属性,再程序中根本没法改变它..