JTable: Zeile unter MouseCursor farblich hervorheben

Status
Nicht offen für weitere Antworten.
S

Shapster

Gast
Halli hallo,

ich habe mit der Forumsuche noch keine Antwort auf folgendes Problem gefunden:

ich habe ein JTable samt eigenem TableCellRenderer und moechte, dass wenn der Benutzer mit der Maus ueber eine Zelle faehrt die betreffende Zelle der 1. Spalte der gleichen Zeile farblich hinterlegt wird.

Ich habe einen MouseMotionListener implementiert, der mir die aktuelle Position des Cursors mitteilt. Allerdings kann ich die aktuelle Zeile und Spalte der Tabelle nicht bestimmen. Diese brauche ich fuer die Methode table.getCellRenderer(row, column).

Gibt es einen Weg die aktuelle Zeile und Spalte der Tabelle ueber die Cursorkoordinaten herauszubekommen? table.getComponentAt(e.getPoint())) liefert mir nur die Tabelle selbst.
 

André Uhres

Top Contributor
Code:
package table;

/*
 * RowMouseHighlightDemo.java
 */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;

public class RowMouseHighlightDemo extends JFrame {

    private JTable jTable1;
    private Point p;

    public RowMouseHighlightDemo() {
        jTable1 = new JTable() {

            @Override
            public Component prepareRenderer(TableCellRenderer renderer, int row, int column) {
                Component c = super.prepareRenderer(renderer, row, column);
                if (getSelectedRow() != row) {
                    c.setBackground(Color.WHITE);
                }
                if (p != null && column == 0 && row == rowAtPoint(p)) {
                    c.setBackground(Color.YELLOW);
                }
                return c;
            }
        };
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        jTable1.setModel(new DefaultTableModel(new Object[][]{{null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null}}, new String[]{"Title 1", "Title 2", "Title 3", "Title 4"}));
        jTable1.addMouseMotionListener(new MouseMotionAdapter() {

            @Override
            public void mouseMoved(MouseEvent evt) {
                jTable1MouseMoved(evt);
            }
        });
        getContentPane().add(new JScrollPane(jTable1), BorderLayout.CENTER);
        pack();
    }

    private void jTable1MouseMoved(MouseEvent evt) {
        p = evt.getPoint();
        jTable1.repaint();
    }

    public static void main(String[] args) {
        new RowMouseHighlightDemo().setVisible(true);
    }
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
VfL_Freak Swing Einzelne Zeile in jTable selektieren klappt nicht AWT, Swing, JavaFX & SWT 7
T Swing JTable Zeile mit ausgelesenen Werten mit Hilfe von einem Button hinzufügen AWT, Swing, JavaFX & SWT 1
J Swing JTable Zeile nicht auswählbar machen AWT, Swing, JavaFX & SWT 0
J JTable Zeile anklicken und neues Frame öffnen AWT, Swing, JavaFX & SWT 4
S JTable nach aktualisierung - neue Zeile nicht "klickbar" AWT, Swing, JavaFX & SWT 0
D Swing Letzte Zeile einer JTable nicht über RowSorter sotieren AWT, Swing, JavaFX & SWT 2
B jTable ganze Zeile anhand eines Kriterium färben AWT, Swing, JavaFX & SWT 6
P Swing Alle Zeilen einer Spalte (jTable) zusammen zählen und in eine eigene Zeile das Ergebnis schreiben. AWT, Swing, JavaFX & SWT 7
Ollek Swing JTable - Zeile löschen mit AbstractTableModel AWT, Swing, JavaFX & SWT 20
S Swing Kopieren einer vollständigen Zeile einer JTable AWT, Swing, JavaFX & SWT 3
H Unterschiedliche JComboBox je JTable Zeile AWT, Swing, JavaFX & SWT 4
J Swing JTable: Komplette Zeile aber ohne Spalten markieren AWT, Swing, JavaFX & SWT 11
G Zeile in JTable durch rechte Maustaste manipulieren AWT, Swing, JavaFX & SWT 4
S Swing AWT-Exception bei JTable mit JComboBox beim Löschen der letzten Zeile AWT, Swing, JavaFX & SWT 3
Meldanor Swing JTable - Eine neue Zeile vor einer bestehenden Einfügen AWT, Swing, JavaFX & SWT 2
R Zeile in JTable anhand von Wert einfärben AWT, Swing, JavaFX & SWT 2
N JTable, Zeile bleibt immer selektiert.... AWT, Swing, JavaFX & SWT 3
F Swing JTable: Problem beim zeile löschen AWT, Swing, JavaFX & SWT 3
N Methode zum ermitteln der editierte Zeile/Zelle in jTable AWT, Swing, JavaFX & SWT 8
C Mit SelectionListener herausfinden welche zeile in Jtable angeklickt wurde AWT, Swing, JavaFX & SWT 5
E In JTable neue Zeile mit Tabulator einfügen AWT, Swing, JavaFX & SWT 5
R JTable Hintergrund der Zeile abhängig von Inhalt einer Zelle verändern AWT, Swing, JavaFX & SWT 3
R JTable Zeile löschen AWT, Swing, JavaFX & SWT 4
C JTable mit RowSorter und Drag & Drop: Zeile verschieben AWT, Swing, JavaFX & SWT 4
P JTable zeile einfärben AWT, Swing, JavaFX & SWT 1
N Farbe einer einzelnen Zeile einer JTable ändern AWT, Swing, JavaFX & SWT 10
R JTable: Zellen einer Zeile zusammenfassen? AWT, Swing, JavaFX & SWT 3
D JTable um eine Zeile erweitern AWT, Swing, JavaFX & SWT 4
GilbertGrape JTable - immer leere Zeile AWT, Swing, JavaFX & SWT 6
A JTable zeile auswählen AWT, Swing, JavaFX & SWT 2
S in JTable eine Zeile färben AWT, Swing, JavaFX & SWT 5
T JTable ohne Titel in der ersten Zeile AWT, Swing, JavaFX & SWT 2
K leere Zeile zu JTable zufügen AWT, Swing, JavaFX & SWT 2
E JTable letzte Zeile in Fett schrift? AWT, Swing, JavaFX & SWT 3
O JTable + event wenn andere Zeile selektiert ist AWT, Swing, JavaFX & SWT 5
O JTable Zeile zuweisen und weiter mit dem Button AWT, Swing, JavaFX & SWT 2
M JTable & Problem, das nicht die komplette Zeile gefärbt AWT, Swing, JavaFX & SWT 6
G JTable erste zeile fixieren wie in excel? AWT, Swing, JavaFX & SWT 3
Z JTable automatisch zu einer Zeile scrollen AWT, Swing, JavaFX & SWT 4
G JTable Zeile zurückgeben AWT, Swing, JavaFX & SWT 4
D Herausfinden auf welche Zeile in einer JTable geklickt wurde AWT, Swing, JavaFX & SWT 2
N Die Zeile einer JTable verändert beim klicken ihre Farbe? AWT, Swing, JavaFX & SWT 7
S Eine Zeile zu einer JTable hinzufügen wo Zelle selektiert is AWT, Swing, JavaFX & SWT 4
G JTable Zeile mit Farbe füllen AWT, Swing, JavaFX & SWT 2
G JTable komplette Zeile auf deaktiv setzen AWT, Swing, JavaFX & SWT 2
B JTable erste Zeile aktiv AWT, Swing, JavaFX & SWT 6
A Zeile in JTable einfügen/löschen- Tutorial gesucht AWT, Swing, JavaFX & SWT 9
H jtable makierte zeile löschen AWT, Swing, JavaFX & SWT 4
K JTable: letzte Zeile immer sichtbar AWT, Swing, JavaFX & SWT 2
G JTable-Zeile/Zelle markieren und mir Shortcut in Arbeitsspei AWT, Swing, JavaFX & SWT 3
A Zeile in einer JTable einfügen AWT, Swing, JavaFX & SWT 4
K JTable - ganze Zeile soll nicht markiert werden AWT, Swing, JavaFX & SWT 2
F JTable: Selektion einer kompletten Zeile AWT, Swing, JavaFX & SWT 5
G JTable selektion der Zeile bei Fokusieren mit der Maus AWT, Swing, JavaFX & SWT 5
C JTable -> Rechtsklick -> Zeile markieren AWT, Swing, JavaFX & SWT 5
N JTable Ganze Zeile markieren AWT, Swing, JavaFX & SWT 8
G Farbe einer JTable-Zeile von "Außen" ändern AWT, Swing, JavaFX & SWT 2
M JTable mit JCombobox eigene Auswahl pro Zeile ? AWT, Swing, JavaFX & SWT 3
L Falsche Zeile gelöscht nach Spalte Sortierung in JTable AWT, Swing, JavaFX & SWT 2
V Click auf JTable (Zeile) liefert den Eintrag? AWT, Swing, JavaFX & SWT 11
M Farbe der Umrandung einer ausgwählten Zeile ändern (JTable) AWT, Swing, JavaFX & SWT 3
C Aktion auführen nach Doppelklick auf Zeile in JTable AWT, Swing, JavaFX & SWT 10
S JTable + Zeile Selektieren AWT, Swing, JavaFX & SWT 5
V JTable: Bei Klick in Zelle -> Ganze Zeile markeiren AWT, Swing, JavaFX & SWT 7
R Gewählte Zeile aus JTable ausgeben lassen AWT, Swing, JavaFX & SWT 17
R JTable: nur eine Zeile auswählen AWT, Swing, JavaFX & SWT 2
J JTable Zeile mit rechtsklick AWT, Swing, JavaFX & SWT 6
T Zeile in JTable mit Doppelklick auswählen AWT, Swing, JavaFX & SWT 8
G Zeile aus JTable in anderem JTable hinzufügen AWT, Swing, JavaFX & SWT 3
C JTable - Zeile fokussieren / selektieren AWT, Swing, JavaFX & SWT 7
J JTable: ganze Zeile selektieren AWT, Swing, JavaFX & SWT 5
S Neue Zeile in JTable adden AWT, Swing, JavaFX & SWT 3
G JTable! Beim anklicken einer Zeile soll sich Farbe ändern! AWT, Swing, JavaFX & SWT 2
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
S HPRO und UPRO gemeinsame JTABLE gemeinsamer RENDERER ? AWT, Swing, JavaFX & SWT 1
F Swing JTable - MultiHeader inkl. Eingabemöglichkeit AWT, Swing, JavaFX & SWT 1
S JTable - Feldinhalte anzeigen AWT, Swing, JavaFX & SWT 15
D Swing JTable Spaltenbreite AWT, Swing, JavaFX & SWT 1
W Gibt es einen "automatischen Listener" in Swing oder JTable oder der ATM-Klasse? AWT, Swing, JavaFX & SWT 14
G jTable - getSelectedRow() AWT, Swing, JavaFX & SWT 3
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
D Tastaturabfragen CTRL+t, CTRL+E bei eine JTable, bestehend aus JTextAteas AWT, Swing, JavaFX & SWT 4
P Checkboxes in JTable nicht editable AWT, Swing, JavaFX & SWT 9
F Best-Practise: JTable Text in Zelle zu groß AWT, Swing, JavaFX & SWT 2
izoards JTable in CSV File schreiben... AWT, Swing, JavaFX & SWT 23
Kohl Jedes Objekt einer JTable um ein Zeichen verkürzen AWT, Swing, JavaFX & SWT 7
I JTable, DefaultTableModel, zwei Zahlen multiplizieren. AWT, Swing, JavaFX & SWT 26
M JTABLE / wie oft wurde gewürfelt. AWT, Swing, JavaFX & SWT 1
F JTable vergrößern AWT, Swing, JavaFX & SWT 2
H JTable: Diverse NullPointer-Exceptions zur Laufzeit AWT, Swing, JavaFX & SWT 3
J Swing Werte des JTable werden nicht angezeigt AWT, Swing, JavaFX & SWT 9
T Swing JTable cellRenderer mit jpg Hintergrundfarbe lässt sich nicht ändern. AWT, Swing, JavaFX & SWT 1
HoT Einzelne Zelle in JTable Rahmen unten setzen AWT, Swing, JavaFX & SWT 24
B JTable Zellen zusammenfügen AWT, Swing, JavaFX & SWT 3
M Swing Cell Renderer für Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 0
H JTable im JSplitPane darstellen AWT, Swing, JavaFX & SWT 2
MadMax2506 Swing JTable lädt sehr lange AWT, Swing, JavaFX & SWT 1
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 9
R Swing JTable und Spaltenausrichtung AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Neue Themen


Oben