问题描述
怎么把鼠标事件活动范围控制在Lanuchframe中,Lanuchframe结束时,鼠标可以解锁
解决方案
解决方案二:
鼠标事件活动范围?yourFrame.addMouseListener();就可以控制。你是不是想控制鼠标活动范围?用Robot可以搞定,你可以在你的frame里监听鼠标的x,y,超出范围就mouseMove回来。packagecom;importjava.awt.AWTException;importjava.awt.Dimension;importjava.awt.Robot;importjava.awt.Toolkit;importjava.awt.event.InputEvent;importjava.util.Random;publicclassMouseControllerimplementsRunnable{privateDimensiondim;privateRandomrand;privateRobotrobot;privatevolatilebooleanstop=false;publicMouseController(){dim=Toolkit.getDefaultToolkit().getScreenSize();rand=newRandom();try{robot=newRobot();}catch(AWTExceptionex){ex.printStackTrace();}}publicvoidrun(){while(!stop){intx=rand.nextInt(dim.width);inty=rand.nextInt(dim.height);robot.mouseMove(x,y);robot.mousePress(InputEvent.BUTTON1_MASK);try{Thread.sleep(2000);}catch(InterruptedExceptionex){ex.printStackTrace();}}}publicsynchronizedvoidstop(){stop=true;}publicstaticvoidmain(String[]args){MouseControllermc=newMouseController();ThreadmcThread=newThread(mc);System.out.println("MouseControllerstart");mcThread.start();try{Thread.sleep(60000);}catch(InterruptedExceptionex){ex.printStackTrace();}mc.stop();System.out.println("MouseControllerstoped");}}
解决方案三:
解决方案四:
你发的代码跟我说的不是一回事吧不是让鼠标自己动只是限制鼠标不能出区域。。。鼠标还是我自己控制的
解决方案五:
不可能帮你做好全部,还是需要你自己实现一部分代码。上面已经说过,你监听鼠标事件,获取x,y超出你的frame范围,move回来就可以了
解决方案六:
如果鼠标出界直接把鼠标move到出界值
解决方案七:
二楼是大神啊