㈠ 用java设计鼠标控制程序。(有源代码,最好有最后结果的截屏)
给你代码,
------------------------------------------------------------------------------------------
import java.awt.MouseInfo;
public class App extends JFrame implements KeyListener {
private JLabel lblNewLabel;
private String str = "";
public App() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setSize(400, 300);
setResizable(false);
getContentPane().setLayout(null);
lblNewLabel = new JLabel("");
lblNewLabel.setBounds(0, 259, 394, 13);
getContentPane().add(lblNewLabel);
setVisible(true);
new Thread() {
public void run() {
while (true) {
try {
Point mainPoint = getLocation();
Point point = MouseInfo.getPointerInfo().getLocation();
int x = point.x - mainPoint.x;
int y = point.y - mainPoint.y;
if (x < 0 || x > 400) {
sleep(10);
continue;
}
if (y < 0 || y > 300) {
sleep(10);
continue;
}
lblNewLabel.setText(str + "x : " + x + " y : " + y);
sleep(10);
} catch (Exception e) {
}
}
}
}.start();
this.addKeyListener(this);
}
public static void main(String[] args) {
new App();
}
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
str = "C ";
return;
}
if (e.getKeyCode() == KeyEvent.VK_SHIFT) {
str = "S ";
return;
}
str = "D ";
}
public void keyReleased(KeyEvent e) {
str = "U ";
}
public void keyTyped(KeyEvent e) {
}
}
㈡ Java 程序实现鼠标点击 键盘等事件
用 Robot 类的如下方法:
void keyPress(int keycode)
按下给定的键。
void keyRelease(int keycode)
释放给定的键。
void mouseMove(int x, int y)
将鼠标指版针移动到给定屏幕坐权标。
void mousePress(int buttons)
按下一个或多个鼠标按钮。
void mouseRelease(int buttons)
释放一个或多个鼠标按钮。
void mouseWheel(int wheelAmt)
在配有滚轮的鼠标上旋转滚轮。
㈢ java鼠标点击事件怎么做
java鼠标点击事件的方法如下:
<spanstyle="font-family:Verdana;">事件源</span>.addMouseListener(newMouseAdapter(){//建立事件处理机制
@Override
publicvoidmouseClicked(MouseEvente){
if(e.getButton()==e.BUTTON1){//点击鼠标左键
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是左键,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}elseif(e.getButton()==e.BUTTON2){//点击鼠标滑轮
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是滑轮,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}
elseif(e.getButton()==e.BUTTON3){//点击鼠标右键
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是右键,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}
}
});
e.getButton()返回值分别为NOBUTTON、BUTTON1、BUTTON2、BUTTON3,分别代表着无点击、左击、中间键、右击三种情况。
㈣ 谁知道java的robot鼠标控制
r.mouseMove(50, 50);
r.setAutoDelay(0);
r.mousePress(InputEvent.BUTTON1_MASK);
r.mouseRelease(InputEvent.BUTTON1_MASK);
先移到目标点,然后设置时间,时间为0,意味动作连续。然后按下 释放鼠标专。
public void mousePress(int buttons)按下一属个或多个鼠标按钮。应该使用 mouseRelease 方法释放鼠标按钮。
参数:
buttons - Button 掩码;一个或多个以下标志的组合:
InputEvent.BUTTON1_MASK
InputEvent.BUTTON2_MASK
InputEvent.BUTTON3_MASK
就个参数就是鼠标的3个键。
你移到那里点击,就是在那里点击的,只要把时间设置很短,外界没办法干扰的。
㈤ java里的鼠标移动怎么实现急!!!
这是因为一刚运行程序就会收到一个mouseMoved消息
lz可以这么做
首先给你的窗口专类添加成员变量
private int x=-99999;
private int y=-99999;
然后这属样定义事件处理
public void mouseMoved(MouseEvent ee){
if(this.x!=-99999){
int dx=x-ee.getX();
int dy=y-ee.getY();
if(Math.abs(dx)>10||Math.abs(dy)>10)//判断鼠标移动的幅度,超过一定限度再退出,避免误操作,lz这里可以自由调整
{
System.exit(0);
}
}
this.x=ee.getX();
this.y=ee.getY();
}
㈥ java鼠标事件都有什么方法
鼠标事件
按下鼠标按键
释放鼠标按键
单击鼠标按键(按下并释放)
鼠标光标进入组件几何图形的未遮掩部分
鼠标光标离开组件几何图形的未遮掩部分
鼠标移动事件
移动鼠标
拖动鼠标
MouseEvent 对象被传递给每一个 MouseListener 或 MouseAdapter 对象,这些对象使用组件的 addMouseListener 方法注册,以接收“令人感兴趣”鼠标事件。(MouseAdapter 对象实现 MouseListener 接口。)所有此类侦听器对象都获得包含鼠标事件的 MouseEvent。
MouseEvent 对象还传递给每一个使用组件的 addMouseMotionListener 方法注册接收鼠标移动事件的 MouseMotionListener 或 MouseMotionAdapter 方法。(MouseMotionAdapter 对象实现 MouseMotionListener 接口。)所有此类侦听器对象都获得包含鼠标移动事件的 MouseEvent。
当单击鼠标按键时,生成事件并发送给已注册的 MouseListener。可以使用 InputEvent.getModifiers() 和 InputEvent.getModifiersEx() 方法检索模式键的状态。InputEvent.getModifiers() 所返回的鼠标按键掩码只反映改变了状态的按键,而没有反映所有按键的当前状态。(注:由于 ALT_MASK/BUTTON2_MASK 和 META_MASK/BUTTON3_MASK 的值是重叠的,所以对于涉及组合键的鼠标事件并不总是正确的。要获得所有按键和组合键的状态,请使用 InputEvent.getModifiersEx()。getButton() 返回改变了状态的鼠标按键。
例如,如果按下了第一个鼠标按键,则以下列顺序发送事件:
id 修饰符 按键
MOUSE_PRESSED: BUTTON1_MASK BUTTON1
MOUSE_RELEASED: BUTTON1_MASK BUTTON1
MOUSE_CLICKED: BUTTON1_MASK BUTTON1
按下多个鼠标按键时,每次按下、释放和单击按钮都会导致出现一个独立的事件。
例如,如果用户按下按键 1 后按下按键 2,然后以相同的顺序释放这些键,则生成下列事件序列:
id 修饰符 按键
MOUSE_PRESSED: BUTTON1_MASK BUTTON1
MOUSE_PRESSED: BUTTON2_MASK BUTTON2
MOUSE_RELEASED: BUTTON1_MASK BUTTON1
MOUSE_CLICKED: BUTTON1_MASK BUTTON1
MOUSE_RELEASED: BUTTON2_MASK BUTTON2
MOUSE_CLICKED: BUTTON2_MASK BUTTON2
如果先释放按键 2,则先出现 BUTTON2_MASK 的 MOUSE_RELEASED/MOUSE_CLICKED 对,后跟 BUTTON1_MASK 对。
在释放鼠标按键前,MOUSE_DRAGGED 事件被传递到在其中按下鼠标按键的 Component(而不管鼠标位置是否处于 Component 的边界内)。由于拖放实现是与平台相关的,所以在本机拖放操作期间可能不传递 MOUSE_DRAGGED 事件。在多屏幕环境中,即使鼠标位置在与 Component 关联的 GraphicsConfiguration 边界之外,也会将鼠标拖动事件传递给该 Component。但是在这种情况下所报告的鼠标拖动事件位置可能与实际的鼠标位置不同:
㈦ JAVA中怎么用鼠标去控制一个角色的移动啊.
添加一鼠标监听器呗,以鼠标的坐标位置设置猪出现的位置
㈧ 在Java中有没有一个方法可以让鼠标移到某个位置
java.awt.Robot类中的
mouseMove(int x, int y)将鼠标指针移动到给定屏幕坐标。
㈨ java 如何实现控制鼠标点击
1//例子1
2import java.applet.*;import java.awt.*;
3import java.awt.event.*;
4public class Example18_1 extends Applet implements MouseListener
5{ TextField text;
6 public void init()
7 { text=new TextField(40); add(text);
8 addMouseListener(this) ;//向小程序增加鼠标事件监视器。
9 }
10 public void mousePressed(MouseEvent e)
11 { text.setText("鼠标键按下了,位置是"+e.getX()+","+e.getY() );
12 }
13 public void mouseReleased(MouseEvent e)
14 { text.setText(" 鼠标松开了,位置是"+e.getX()+","+e.getY() );
15 }
16 public void mouseEntered(MouseEvent e)
17 { text.setText(" 鼠标进来了,位置是"+e.getX()+","+e.getY() );
18 }
19 public void mouseExited(MouseEvent e)
20 { text.setText(" 鼠标走开了");
21 }
22 public void mouseClicked(MouseEvent e)
23 { if(e.getClickCount()==2)
24 { text.setText("鼠标键双击,位置:"+e.getX()+","+e.getY());
25 }
26 else {}
27 }
28}
29
30//例子2
31import java.awt.*;import java.awt.event.*;
32class MyCanvas extends Canvas implements MouseListener
33{ int left=-1,right=-1; //记录左、右键用的变量。
34 int x=-1,y=-1; //记录鼠标位置用的变量。
35 MyCanvas()
36 { setSize(100,100);
37 setBackground(Color.cyan) ;
38 addMouseListener(this);
39 }
40 public void paint(Graphics g)
41 { if(left==1)
42 { g.drawOval(x-10,y-10,20,20);
43 }
44 else if(right==1)
45 { g.drawRect(x-8,y-8,16,16);
46 }
47 }
48 public void mousePressed(MouseEvent e)
49 { x=e.getX(); y=e.getY();
50 if(e.getModifiers()==InputEvent.BUTTON1_MASK)
51 { left=1;right=-1;
52 repaint();
53 }
54 else if(e.getModifiers()==InputEvent.BUTTON3_MASK)
55 { right=1; left=-1;
56 repaint();
57 }
58 }
59 public void mouseReleased(MouseEvent e){}
60 public void mouseEntered(MouseEvent e){}
61 public void mouseExited(MouseEvent e)
62 { left=-1;right=-1;
63 repaint();
64 }
65 public void mouseClicked(MouseEvent e){}
66 public void update(Graphics g)
67 { if(left==1||right==1)
68 { paint(g);
69 }
70 else
71 { super.update(g);
72 }
73 }
74}
75public class Example18_2
76{ public static void main(String args[])
77 { Frame f=new Frame();
78 f.setBounds(100,100,200,200);f.setVisible(true);
79 f.addWindowListener(new WindowAdapter() //适配器
80 {public void windowClosing(WindowEvent e)
81 {System.exit(0);
82 }
83 });
84 f.add(new MyCanvas(),BorderLayout.CENTER);//添加画布。
85 f.validate();
86 }
87}
88
89//例子3
90import java.awt.*;import java.awt.event.*;
91import java.applet.*;
92public class Example18_3 extends Applet implements MouseListener
93{ TextField text; Button button;
94 TextArea textArea;
95 public void init()
96 { text=new TextField(10); text.addMouseListener(this);
97 button=new Button("按钮"); button.addMouseListener(this);
98 addMouseListener(this);
99 textArea=new TextArea(8,28);
100 add(button);add(text);add(textArea);
101 }
102 public void mousePressed(MouseEvent e)
103 { if(e.getSource()==button)
104 {textArea.append("\n在按钮上鼠标按下,位置:"+"("+e.getX()+","+e.getY()+")");
105 }
106 else if(e.getSource()==text)
107 {textArea.append("\n在文本框上鼠标按下,位置:"+"("+e.getX()+","+e.getY()+")");
108 }
109 else if(e.getSource()==this)
110 {textArea.append("\n在容器上鼠标按下,位置:"+"("+e.getX()+","+e.getY()+")");
111 }
112 }
113 public void mouseReleased(MouseEvent e) {}
114 public void mouseEntered(MouseEvent e) {}
115 public void mouseExited(MouseEvent e) {}
116 public void mouseClicked(MouseEvent e)
117 { if(e.getClickCount()>=2)
118 textArea.setText("鼠标连击,位置:"+"("+e.getX()+","+e.getY()+")");
119 }
120}
㈩ 如何用JAVA程序控制鼠标和键盘
你的意思是不同程序之间进行信息交流?
1。你可以写一个服务器,负责接收信息以及发版送信息
2。然权后java程序可以用Socket和服务器连接,服务器可以接受java程序发送来的消息并且转发。
而java程序可以在鼠标点击或者键盘事件发生时想服务器发送信息
3。游戏也是通过Socket和服务器连接,游戏可以接受服务器发送来的消息进行处理。