就像MSN、Skype等聊天软件一样,当用户有一段时间没有动键盘鼠标了,就会将状态设置为离开,
用java怎么实现类似操作,检测用户有一段时间没有动键盘鼠标了?

解决方案 »

  1.   

    没做过这方面的东西,但是我觉得这个应该不难,写个守护进程,对最后一次的事件的时间进行记录,然后判断时间间隔,应该就可以了。记录最后一次时间可以通过swing中的监听器机制来实现,至于判断时间间隔可以通过定时器来实现。说错了不要骂我。欢迎各位指正
      

  2.   

    这个很简单,开一个线程监控就可以了,然后如果按键盘你就改变一个状态位,如果到一定时间没有按那么就离开咯! 可能还要用到timer等类
      

  3.   

    定外开一个定时任务,用java.util.Task类吧,我记得好像这样
      

  4.   

    只有用vc写成dll了,然后用jni来调用
    vc中
    在OnMouseMove()和OnLButtonDownO消息函数中调用SetCapture()函数来捕获鼠标,用ReleaseCapture()来释放鼠标 
    键盘钩子,SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC   )KeyboardProc,hInst,0);
      

  5.   

    页面端我们是用javascript实现,也用该功能。过几天要发布免费版本了,到时候大家用下就知道了。
      

  6.   

    我在想能否通过java虚拟机来获得系统消息,但有恐怕连虚拟机也得不到系统消息
      

  7.   

    用jni来调用dll能够实现,但我还是希望能用java自己的都行实现,希望能够有人帮我解决。
    自己继续研究中……
      

  8.   

    用java实现有一定的困难,但是调用dll文件就很简单了。用vc和delphi 都可以。。