以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]系统空闲时的执行命令出现问题。 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=66463) |
-- 作者:liuxianjie1980 -- 发布时间:2015/4/7 15:48:00 -- [求助]系统空闲时的执行命令出现问题。 项目的系统空闲时写入以下代码:
If LastInputTickCount > 100000 Then
上个厕所,OMG!登陆框出现了NNNN个啊!!
问题在哪里?? |
-- 作者:Bin -- 发布时间:2015/4/7 15:53:00 -- 因为这个事件会一直触发,然后一直执行的. 你可以增加一个全局变量 vars("login")=true If LastInputTickCount > 100000 Then if vars("login") then vars("login")=false Syscmd.Project.SwitchUser() end if End If 再到LoadUserSting 事件设置vars("login")=True
|
-- 作者:狐狸爸爸 -- 发布时间:2015/4/7 17:41:00 -- 用静态变量更方便:
Static f As Boolean If LastInputTickCount > 100000 Then if f = False then f= True f = false Endif
|
-- 作者:liuxianjie1980 -- 发布时间:2015/4/8 9:20:00 -- 静态变量f只是在代码中定义就可以了吗?不需要额外定义? |
-- 作者:Bin -- 发布时间:2015/4/8 9:21:00 -- 不需要 |
-- 作者:liuxianjie1980 -- 发布时间:2015/4/8 9:39:00 -- 还有一个疑问,f作为逻辑变量,在上述代码中只是做了定义,它的值呢?系统是如何识别它的值的呢? |
-- 作者:狐狸爸爸 -- 发布时间:2015/4/8 10:08:00 -- 逻辑变量的值,默认是false,直到你用代码改变他的值。
另关于静态变量的说明: http://www.foxtable.com/help/topics/1061.htm
[此贴子已经被作者于2015/4/8 10:09:12编辑过]
|
-- 作者:liuxianjie1980 -- 发布时间:2015/4/8 11:17:00 -- ok |