2010-11-20 21 views
18

Chcę utworzyć aplikację, która mierzy odległość kursora od środka komponentu, a następnie przesuwa kursor z powrotem do środka (jak większość gier komputerowych na PC). Czy ktoś ma jakieś sugestie?Przesuwanie kursora w języku Java

Odpowiedz

29

Klasy robotów mogą załatwić sprawę. Oto przykładowy kod do przesuwania kursora myszy:

try { 
    // These coordinates are screen coordinates 
    int xCoord = 500; 
    int yCoord = 500; 

    // Move the cursor 
    Robot robot = new Robot(); 
    robot.mouseMove(xCoord, yCoord); 
} catch (AWTException e) { 
} 
+0

Dziękujemy za pep! To na pewno to zrobiło. : 3 – Supuhstar

3

Witam, to będzie po prostu dodawanie. Używam Raspberry PI bardzo dużo, więc musiałem nauczyć się optymalizacji mojego kodu będzie to znacznie krótszy.

try { 
    //moves mouse to the middle of the screen 
    new Robot().mouseMove((int) Toolkit.getDefaultToolkit().getScreenSize().getWidth()/2, (int) Toolkit.getDefaultToolkit().getScreenSize().getHeight()/2); 
    //remember to use try-catch block (always, and remember to delete this) 
} catch (AWTException e) { 
    e.printStackTrace(); 
} 

Nie zapomnij importować:

import java.awt.*; 
+0

Jestem zdezorientowany ... czy mówisz o przechowywaniu kodu źródłowego na Pi? Czy to magicznie powoduje, że skompilowany plik jest mniejszy? Jeśli to drugie, dlaczego instrukcja usunięcia komentarza? – Supuhstar

+0

Cóż, im mniej zmiennych, tym lepiej, aby był bardzo kompaktowy, aby nie powodował przepełnienia pamięci RAM. –

+1

ale i tak tworzy zmienne tymczasowe z twoim kodem. Łańcuchy punktowe są syntaktycznym cukrem, ale na końcu wartość zwracana przez każdą z metod musi być zapisana i śledzona gdzieś. – Supuhstar