Hi folks 
folgendes Konstrukt:
CardLayout;
Card1 und Card2 (es gibt natürlich noch weitere);
In Card 1 rufe ich Daten einer DB - Tabelle auf und speichere diese in ein JTable.
Wenn nun auf eine beliebige Zeile in der JTable geklickt wird, dann erscheint der markierte Datensatz in den jeweils dafür vorgesehenen txtFields. Der Datensatz besitzt natürlich eine ID, damit Änderungen... durchführbar sind.
So weit, so gut, funktioniert auch alles.
Nun möchte ich den oben angesprochenen Datensatz in der Card2 anzeigen lassen und das funktioniert nicht.
Card1.java:
Card2.java
Ich instanziiere die Card1 in Card2, die String Variable idFromKlick ist als Instanzvariable definiert...
leider gehen hier meine bescheidenen Java - Kenntnisse auch schon zu Ende
Ich bitte Euch nun, den Code durchzusehen und mir den Fehler zu nennen.
Danke schonmal im Voraus

folgendes Konstrukt:
CardLayout;
Card1 und Card2 (es gibt natürlich noch weitere);
In Card 1 rufe ich Daten einer DB - Tabelle auf und speichere diese in ein JTable.
Wenn nun auf eine beliebige Zeile in der JTable geklickt wird, dann erscheint der markierte Datensatz in den jeweils dafür vorgesehenen txtFields. Der Datensatz besitzt natürlich eine ID, damit Änderungen... durchführbar sind.
So weit, so gut, funktioniert auch alles.
Nun möchte ich den oben angesprochenen Datensatz in der Card2 anzeigen lassen und das funktioniert nicht.
Card1.java:
Java:
public class Card1 extends JPanel {
private JButton btnKommCall;
private String txtFromKlick = null;
// Konstruktor
public Card1(ActionListener listener) {
//.....
// Button Kommission aufrufen
btnKommCall = new DesignButton("Kommission aufrufen","CARD2", 14,
"Markierte Kommission aufrufen", listener);
// ActionListener - btnKommCall
btnKommCall.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtFromTbl();
if(e.getSource() == btnKommCall){
// Zur Kontrolle auf der Konsole ausgeben
System.out.println("Card1: " + txtFromTbl()); // <---- Hier ist das Angeforderte noch da
} else{
System.out.println("Mag mich nit");
}
}
});
}
}// Ende Konstrultor
//------- Abfrage der Datenbank ------
// Vector fuer die Spaltennamen
public final static Vector<?> COLUMN_IDENTIFIERS = new Vector<Object>() {
// serialVersionUID
private static final long serialVersionUID = 4136566931496300757L;
{
add("Id");
add("Datum");
add("KommNr");
add("KommName");
add("Strasse");
add("HausNr");
add("Plz");
add("Gemeinde");
add("TelNr");
add("Bemerkung 1");
add("Bemerkung 2");
}
};
// --------------------------------------------------------------------------------
// Vector fur die Daten aus der DB
protected Vector<Vector<String>> findAllData() {
DBConnect.connect();
Vector<Vector<String>> results = new Vector<Vector<String>>();
try {
Statement stmt = DBData.connection.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM KOMMISSIONEN");
while (rs.next()) {
Vector<String> row = new Vector<String>();
row.addElement(rs.getString("ID"));
row.addElement(rs.getString("DATUM"));
row.addElement(rs.getString("KOMMNR"));
row.addElement(rs.getString("KOMMNAME"));
row.addElement(rs.getString("STRASSE"));
row.addElement(rs.getString("HAUSNR"));
row.addElement(rs.getString("PLZ"));
row.addElement(rs.getString("GEMEINDE"));
row.addElement(rs.getString("TELNR"));
row.addElement(rs.getString("BEMERKUNG1"));
row.addElement(rs.getString("BEMERKUNG2"));
results.add(row);
}
// Resultset schließen
rs.close();
// Statement schließen
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
return results;
}
// ------ Fuellen der Tetxtfelder ----------------------------------------------------------------------
public void resultInTxtFld() {
table.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent evt) {
int row = table.getSelectedRow();
txtId.setText(table.getModel().getValueAt(row, 0).toString());
txtDatum.setText(table.getModel().getValueAt(row, 1).toString());
txtKommNr.setText(table.getModel().getValueAt(row, 2)
.toString());
txtKommName.setText(table.getModel().getValueAt(row, 3)
.toString());
txtStrasse.setText(table.getModel().getValueAt(row, 4)
.toString());
txtHausNr.setText(table.getModel().getValueAt(row, 5)
.toString());
txtPlz.setText(table.getModel().getValueAt(row, 6).toString());
txtGemeinde.setText(table.getModel().getValueAt(row, 7)
.toString());
txtTelNr.setText(table.getModel().getValueAt(row, 8).toString());
txtBem1.setText(table.getModel().getValueAt(row, 9).toString());
txtBem2.setText(table.getModel().getValueAt(row, 10).toString());
}
});
}
//------- Text fuer Card2 -----------------------------------------------------------------------
public String txtFromTbl() {
txtFromKlick = txtBem2.getText();
//System.out.println("KommList: " + idFromKlick);
return txtFromKlick;
}
Card2.java
Java:
public class Card2 extends JPanel {
//....
private JTextField textBemerkung2;
// Konstruktor
public Card2(ActionListener listener) {
// Instanz der Klasse Card1 erstellen
Card1 c1 = new Card1(listener);
// Textfeld fuellen
textBemerkung2 = new JTextField();
textBemerkung2.setText(c1.txtFromTbl()); // <---- Hier ist das Angeforderte NICHT mehr da!!
//.......
}
}
Ich instanziiere die Card1 in Card2, die String Variable idFromKlick ist als Instanzvariable definiert...

leider gehen hier meine bescheidenen Java - Kenntnisse auch schon zu Ende

Ich bitte Euch nun, den Code durchzusehen und mir den Fehler zu nennen.
Danke schonmal im Voraus
