MouseOver

Status
Nicht offen für weitere Antworten.
T

Terra

Gast
Hallo zusammen, ich habe ein Layout mit dem TableLayout erstellt.
Jetzt möchte ich, wenn man über eine Zelle mit der Maus fährt bzw. das Textfeld aktiviert -Textfeld befindet sich in dieser Zelle-, sich die Hintergrundfarbe ändert.
Bietet das TableLayout bereits sowas an. Oder wie kann ich das am Besten umsetzen.
Bitte schreibt eine verständliche Antwort, dass ich es auch nach vollziehen kann ;)

Danke
 

Jango

Gesperrter Benutzer
Mit einem MouseMotionListener. Die Forensuche hätte dich weitergebracht. :wink:
 
G

Guest

Gast
Also Jango hat teilweise Recht. Den MouseMotionListener benötigst Du wenn du in das Textfeld klickst. Um zu registrieren, wenn du über die jeweilige Zelle fährst gibt es verschiedene Ansätze.

Ich habe noch nicht mit TableLayout gearbeitet, sowie die Doku dazu aussieht gibt es keine Implementation. Aber ich stelle mir das so vor:

1. Möglichkeit - du legst in jede Zelle ein JPanel(wenn du mit Swing arbeitest) und packst ein MouseListener drauf.
2. Möglichkeit - du überschreibst die Klasse TableLayout und baust das mit den JPanels(oder einem entsprechendem Component) mit ein.

Da man davon ausgehen sollte, dass man die einzelnen Zellen "resizen" kann, kannst Du IMHO die Anfangs gesetzten Zellgrößen nicht zur Identifizierung der Zellpositionen heranziehen.
Mit TableLayout.Entry kann man auch nicht arbeiten, da man nur die int-Werte der Zellen erhält.

Wenn Du schon fortgeschrittener bist, empfehle ich dir die 2. Möglichkeit. Dann kannst Du dies immer wieder benutzen und lernst ordentlich dazu!

Gruß MrRock
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben