2 Tabellen nebneinander vergleichen

Hallo,

ich möchte 2 Tabellen mit gleicher Struktur und Inhalt nebeneinander anzeigen. Dabei soll es aber möglich sein, dass wenn ich in der linken Tabelle scrolle, die rechte mitscrollt und umgekehrt. Horziontal und vertikal.
Hat da einer eine Idee wie man das lösen könnte?

Grüße

PeMa

Moin,

das sollte ziemlich einfach zu bewerkstelligen sein:

Wenn eine Deiner Tabellen den Fokus hat und Du den Index der Scrollbar veränderst (sei es durch Klicken oder Mausrad), dann kannst Du doch jedes mal diesen Index auf die andere Tabelle übertragen.

Das heißt, Du musst ein Event abfeuern, sobald die Scrollbar betätigt wird bzw. sich der Viewport innerhalb der Tabelle ändert.

Gruß,
Puni

Hallo Puni,

vielen Dank für den Tip, doch wie bekomme ich den Index?
So Sieht mein Code aus:
JScrollPane jsp1 = new JScrollPane(tabelle1);
JScrollPane jsp2 = new JScrollPane(tabelle2);
jsp1.getHorizontalScrollBar().???

Vielleicht könntest du ein kurzes Beispiel posten, wie du das machen würdest.
Danke

PeMa

Hab es jetzt doch hinbekommen
JScrollPane jsp1 = new JScrollPane(tabelle1);
JScrollPane jsp2 = new JScrollPane(tabelle2);
jsp1.getViewport().addChangeListener(new MyChangeListener(jsp2));
jsp2.getViewport().addChangeListener(new MyChangeListener(jsp1));

MyChangeListener sieht so aus:
public class MyChangeListener implements ChangeListener {
ScrollPaneView scp;
public MyChangeListener (ScrollPaneView scp)
{
this.scp = scp;
}

public void stateChanged(ChangeEvent e) {
if (e.getSource() instanceof ViewportView)
{
ViewportView v = (ViewportView)e.getSource();
scp.getViewport().setViewPosition(v.getViewPosition());
}
}
}

Danke für den Tip mit der ViewportView!!

Gruß

PeMa