㈠ 用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和伺服器連接,游戲可以接受伺服器發送來的消息進行處理。