nie wiem czy dobrze zrozumiałam co chciałbyś zrobić. Napiszę jak ja to zrozumiałam, a wiec:
chciałbyś, aby po naciśnięciu np literki "a", zmieniła się pozycja kursora.
Napisałam taki program, który na samym początku wyświetla napis: "pocztek!". Następnie jak użytkownik naciśnie literkę "a" zmienia się pozycję kursora. Zmieniając za każdym naciśnięciem literki "a" pozycję o:
xMouseMove += 50; // współrzędna x
yMouseMove += 50; // współrzędna y
Jeśli użytkownik nic nie będzie naciskał wyświetli się napis "nic", jak naciśnie jedną z strzałek wyświetli się napis: "strzałki naciska". W momencie naciskania jakiegoś znaku, pojawia się napis: "jak naciska"
Kod przedstawia się następująco:
import java.awt.*;
import java.awt.event.*;
import java.io.IOException;
import java.awt.Robot;
/*
aby mieć możliwość skorzystania z obsługi klawiatury i myszki należy implementować dwa interfejsy:
KeyListener, MouseMotionListener
*/
public class KeyListenerTester extends Frame implements KeyListener, MouseMotionListener {
TextField t1;
Label l1;
public KeyListenerTester(String s) throws IOException {
super(s);
Panel p = new Panel();
l1 = new Label("pocztek!");
p.add(l1);
add(p);
addKeyListener(this);
setSize(500, 500);
setVisible(true);
addMouseMotionListener(this);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
private KeyListenerTester() {
throw new UnsupportedOperationException("Not yet implemented");
}
public void keyTyped(KeyEvent e) {
l1.setText("jak naciska");
}
public void keyPressed(KeyEvent e) {
l1.setText("strzałki naciska");
}
public void mouseDragged(MouseEvent e) {
}
public void mouseMoved(MouseEvent e) {
}
int xMouseMove = 50;
int yMouseMove = 50;
public void keyReleased(KeyEvent e) {
// 65 - oznacza literkę "a"
int znak = e.getKeyCode();
if (znak == 65) {
try {
Robot robot = new Robot();
xMouseMove += 50;
yMouseMove += 50;
robot.mouseMove(xMouseMove, yMouseMove);
} catch (AWTException x) {
}
} else {
}
l1.setText("nic ");
}
public static void main(String[] args) throws IOException {
new KeyListenerTester("Key Listener Tester");
}
}
podczas pisania kodu korzystałam ze stron internetowych:
http://download.oracle.com/javase/tutorial/uiswing/examples/events/MouseMotionEventDemoProject/src/events/MouseMotionEventDemo.java
http://www.exampledepot.com/egs/java.awt/MoveMouse.html
http://www.khronos.org/message_boards/viewtopic.php?f=35&t=3295&start=15
http://www.roseindia.net/java/example/java/awt/how-to-use-keylistener.shtml