MouseEntered mit X und Y Koordinaten

HiImSkulte

Mitglied
Hallo liebe Community,
ich bin gerade dabei, etwas in Java herumzutesten, und bin auf ein Problem gestoßen, wobei ich nicht weiß, wieso es so ist oder wie ich es lösen soll, da Google Recherche nichts gebracht hat. (Trifft nicht auf mein spezielles Programm zu)

Und zwar,
im mouseMoved Event wird nach der X und Y Koordinate abgefragt um die Position des Cursors zu ermitteln.
Nun kann ich mit folgendem Code bei mouseClicked, mousePressed und mouseReleased bequem abfragen ob sich die Maus auf einem Knopf oder ähnlichem befindet und eine Anweisung reinschreiben:
Java:
@Override
    public void mouseClicked(MouseEvent e) {
        if ((mousex >= 200 && mousex <= 400) && (mousey >= 50 && mousey <= 150)) {
            playClicked = true;
        }
    }
Wenn ich allerdings die gleiche If-Abfrage bei mouseEntered reinschreibe, passiert nichts.

Meine Frage:
Kann ich bei mouseEntered mit X und Y Koordinaten des Mauszeigers eine Anweisung ausführen lassen?

Dieser Code funktioniert nicht:
Java:
public void mouseEntered(MouseEvent e) {
        if ((mousex >= 200 && mousex <= 400) && (mousey >= 50 && mousey <= 150)) {
            playClicked = true;
        }   
    }

Mein Ziel ist es, dass wenn der Cursor über einen Knopf geht, die Farben von dem Knopf geändert werden.
Ich hoffe es war verständlich formuliert, danke für Rückmeldungen! :)
 

Robat

Top Contributor
Hey HiImSkulte,

nicht so kompliziert denken. Die Koordinatenabfrage macht die Methode schon intern für dich! :)
Du musst nur prüfen welche Komponente es ist.

Also bspw:

Java:
public void mouseEntered(MouseEvent e)
{
     if(e.getSource() == mySuperCoolButton)
     {
            mySuperCoolButton.setBackground(Color.RED);
     }
}

Gruß
Robert
 

HiImSkulte

Mitglied
@Robat
Habe den Button einfach per g.fillRoundRect(...); gemacht. (Graphics = g), deswegen wollte ich es per X und Y machen weil ich doch keine Variable für der Button festlegen kann.
Danke!
 

X5-599

Top Contributor
Hast du alle deine Rechtecke in einer Klasse oder für jedes Rechteck eine eigene gemacht?

Wenn du zB alle in einer Klasse hast, bräuchtest du nur die Methode mouseMoved. Die trackt ja jede Bewegung auf der grafischen Oberfläche deiner Klasse.
 

HiImSkulte

Mitglied
Habe mousex und mousey von der mouseMoved Methode, und habe alle Rechtecke und was gezeichnet wird in einer anderen Klasse. Bei mouseMoved macht er es aber nur wenn sich die Maus auf dem Knopf hin und her bewegt. Bei mouseEntered aber in einem Bereich dauerhaft bis sie wieder rausgeht.

Gruß Skulte
 

HiImSkulte

Mitglied
Also, meine mouseMoved Methode:
Java:
public static void mouseMoved(mouseEvent e) {
     mousex = e.getX();
     mousey = e.getY();
}

Habe es jetzt hinbekommen, mit folgendem Code:
Java:
    public void mouseMoved(MouseEvent e) {
        mousex = e.getX();
        mousey = e.getY();
       
        // update button hovered
        if ((mousex >= DrawObjects.menuButtonBackgroundX && mousex <= DrawObjects.menuButtonBackgroundX + 50) && (mousey >= 18 && mousey <= 68)) {
            DrawObjects.menuButtonBackground = 0xF2F2F2;
            DrawObjects.menuButtonLines = 0x3E3E42;
        } else if ((mousex != DrawObjects.menuButtonBackgroundX && mousex != DrawObjects.menuButtonBackgroundX + 50) && (mousey != 18 && mousey != 68)) {
            DrawObjects.menuButtonBackground = 0x3E3E42;
            DrawObjects.menuButtonLines = 0xF2F2F2;
        }
    }

Danke! :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
berserkerdq2 Habe ein svg bild, kann ich das zu svg koordinaten umrechnen, damit ich den Umriss zeichnen kann? Wenn ja wie? Allgemeine Java-Themen 1
C Koordinaten LONG/LAT eines neuen Punktes in bestimmter Entfernen und Winkel berechnen Allgemeine Java-Themen 3
C UTM Koordinaten in LATITUDE und LONGITUDE umrechnen Allgemeine Java-Themen 13
MaxG. Kreis Koordinaten Allgemeine Java-Themen 7
4a61766120617274697374 PDF iText Wort Koordinaten auslesen Allgemeine Java-Themen 1
T Geographische in UTM Koordinaten umwandeln Allgemeine Java-Themen 5
I Koordinaten von Fluglinie auf Openstreetmap verfolgen Allgemeine Java-Themen 1
U Koordinaten alle Pixel eines Dreiecks zeichnen ausgeben Allgemeine Java-Themen 5
K AWT Aus einer Datei die Koordinaten Angaben herauslesen und dreidimensional darstellen Allgemeine Java-Themen 2
Zettelkasten Vektor mit Koordinaten erstellen Allgemeine Java-Themen 2
J JXMapKit Koordinaten korrigieren Allgemeine Java-Themen 4
K Mouse koordinaten im programm Allgemeine Java-Themen 4
L Koordinaten des Mouselistener nicht überall gleich Allgemeine Java-Themen 13
Eldorado Berechnung von Koordinaten, die zufällig aussehen Allgemeine Java-Themen 5
S Koordinaten aus einem Text filtern Allgemeine Java-Themen 11
M Radianwert wiederholt sich trotz unterschiedlicher zufälliger Koordinaten Allgemeine Java-Themen 6
S Bild anhand von Koordinaten einteilen Allgemeine Java-Themen 7
B API geographische Koordinaten Allgemeine Java-Themen 9
S Testen einer Anwendung durch klicken von Koordinaten Allgemeine Java-Themen 7
G Wort am Bildschirm -- Koordinaten suchen Allgemeine Java-Themen 2
G Richtung berechnen anhand Koordinaten Allgemeine Java-Themen 3
F Koordinaten eines gedrehten Rechtecks Allgemeine Java-Themen 4
C kürzester weg zwischen zwei Punkten, Koordinaten finden Allgemeine Java-Themen 15

Ähnliche Java Themen

Neue Themen


Oben