为什么一使用screen.width,编译器就会死掉?
时间:2011-07-16
来源:互联网
Private Sub Form_Load()
Me.Left = 10000 '一旦这里改成screen.width,整个编译器都会死
End Sub
Private Sub Form_Paint()
While Me.Left > 0
DoEvents
Me.Left = Me.Left - 1
Wend
End Sub
这段代码也很简单,我奇怪的是,如果Me.Left = 10000如果是给它赋值,就没问题,一旦改成screen.width,编译器都会死掉,只有重启电脑。
大家可以把这段代码复制下来试一下,我一个朋友试,他的机子也死了
作者: ningweidong 发布时间: 2011-07-16
Option Explicit
Private Sub Form_Load()
Me.Left = 10000 '一旦这里改成screen.width,整个编译器都会死
End Sub
Private Sub Form_Paint()
While Me.Left > 0
DoEvents
Me.Left = Me.Left - 1
Wend
……
作者: Alice814108771 发布时间: 2011-07-22
这样的话,整个窗体就会再屏幕的右边,由于不在当前屏幕中显示,所以无法触发Form_Paint事件,所以 应该是不动的才对。不会导致编译器出问题。
作者: BestBadGod 发布时间: 2011-07-22
你可以这样试一试:
VB code
Option Explicit Private Sub Form_Load() Me.Left = Screen.Width - Me.Width '一旦这里改成screen.width,整个编译器都会死 End Sub Private Sub Form_Paint() While Me.Left > 0 DoEvents Me.Left = Me.Left - 1 Wend End Sub
这个代码正好没有遮挡住窗体,就没有问题。
作者: Veron_04 发布时间: 2011-07-22
Me.Left = screen.width '一旦这里改成screen.width,整个编译器都会死
这样的话,整个窗体就会再屏幕的右边,由于不在当前屏幕中显示,所以无法触发Form_Paint事件,所以 应该是不动的才对。不会导致编译器出问题。
作者: Alice814108771 发布时间: 2011-07-22
作者: Alice814108771 发布时间: 2011-07-22


作者: Alice814108771 发布时间: 2011-07-22
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28