Ich habe einen Mausklicks Listner zu meinem JTable hinzugefügt, wenn ich die Zeile doppelklicke, wird ein Fenster entsprechend geöffnet.JTable Listener Problem
jTable.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent e) {
double amount = Double.parseDouble(jTable.getValueAt(getSelectedRow(), 4).toString());
String remarks = jTable.getValueAt(getSelectedRow(), 3).toString();
String transactionID = jTable.getValueAt(getSelectedRow(), 1).toString();
new EditFrame(...)
}
});
Dieser Code ich zum Abrufen der Zeile Zeile ausgewählt.
public int getSelectedRow() {
jTable.getSelectionModel().addListSelectionListener(
new ListSelectionListener() {
public void valueChanged(ListSelectionEvent event) {
int viewRow = jTable.getSelectedRow();
selectedRow = viewRow;
System.out.println(viewRow);
}
});
return selectedRow;
}
In meinem Fall wurde mir klar, als ich die zweite Zeile in dem ersten Mal angeklickt, die ich für SelectedRow null erhalte, nur wenn ich erste Zeile dann die zweite Zeile auswählen, ich die richtigen Daten dann erhalten kann. Und wenn ich den Maushörer entfernt habe, ist das Problem dann gelöst. Liegt es daran, dass ich am Mausklick-Listener etwas falsch mache?
Wie würden Sie das verwenden? –