现在做的一个货架管理项目,要求系统在30分钟内没有操作,就要重新登录系统。请教各位大神,该如何是好啊?WinFormC# 

解决方案 »

  1.   

    定义一个数值,比如30000秒,也就是30分钟,通过addhandle对每个控件操作都添加一个事件,这个事件用来重新设置数值=30000,计时器每1秒都将这个数值-1,如果没有操作,就没有对数值重新设置30000,那么当计时器减到0时,就触发超时.
      

  2.   

    那你设置一个全局时间变量
    DateTime ActionTime
    在用户每次操作时,更新ActionTime为DateTime.Now
    然后主窗体加一个Timer计时器每隔一段时间,计算ActionTime与当前时间的时间差,超过限定时间就要重新登录。
      

  3.   

    不用timer吧,记录一个时间戳,每次访问的时候拿当前时间和这个时间戳比对一下就可以了吧,如果用了web的Session,直接有个Timeout属性
      

  4.   

    可不可以不用在每个事件里面都更新ActionTime为DateTime.Now,这样好累啊,有没有好办法?
      

  5.   

    那我想,你就捕捉鼠标在本程序窗口上的单击事件,然后更新ActionTime吧。
    不过我也没尝试过,只是给你提供一个思路。