Hilfe! Bekomme Daten nicht ausgelesen

  • Themenstarter Themenstarter Schwerti
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
S

Schwerti

Gast
Moin,

ich muss für die Uni ein Programm schreiben für eine Autovermietung. Naja soweit klappt es ja, hänge nun schon den ganzen Tag an dem Problem fest das ich die Daten aus den Textfields nicht in die Scrallpane einlesen kann, wenn sie im selben Fenster geöffnet sind. Vielleicht könnt Ihr mir ja hier den einen oder anderen Tip geben.

Danke im vorraus

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.TableModelEvent;
import java.io.*;


public class AutoInputDialog extends JDialog {
  // Anfang Variablen
  private JButton jButtonAutoSpeichern = new JButton();
  private JButton jButtonAutoLoeschen = new JButton();
  private JButton jButtonZurueck = new JButton();
  private JLabel jLabelHersteller = new JLabel();
  private JTextField jTextFieldHersteller = new JTextField();
  private JTextField jTextFieldModell = new JTextField();
  private JTextField jTextFieldFarbe = new JTextField();
  private JTextField jTextFieldKennzeichen = new JTextField();
  private JTextField jTextFieldPS = new JTextField();
  private JTextField jTextFieldKilometerstand = new JTextField();
  private JLabel jLabelModell = new JLabel();
  private JLabel jLabelFarbe = new JLabel();
  private JLabel jLabelKennzeichen = new JLabel();
  private JLabel jLabelPS = new JLabel();
  private JLabel jLabelKilometerstand = new JLabel();
  // Ende Variablen
  
  JScrollPane ScrollFeld = new JScrollPane();

  JTable AutoTabelle = new JTable();

  TableModelEvent mytme;

  AutoTableModel unserTabellenModell;

  public AutoInputDialog(JFrame owner, String title, boolean modal) {
    // Dialog-Initialisierung
    super(owner, title, modal);
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent evt) { System.exit(0); }
    });
    int frameWidth = 1000;
    int frameHeight = 700;
    setSize(frameWidth, frameHeight);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    int x = (d.width - getSize().width) / 2;
    int y = (d.height - getSize().height) / 2 ;
    setLocation(x, y);
    Container cp = getContentPane();
    cp.setLayout(null);
    // Anfang Komponenten

    jButtonAutoSpeichern.setBounds(680, 20, 225, 50);
    jButtonAutoSpeichern.setFont (new Font("Arial", Font.PLAIN, 21));
    jButtonAutoSpeichern.setForeground(Color.black);
    jButtonAutoSpeichern.setText("Auto speichern");
    cp.add(jButtonAutoSpeichern);
    jButtonAutoSpeichern.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        jButtonAutoSpeichernActionPerformed(evt);
      }
    });

    jButtonAutoLoeschen.setBounds(680, 110, 225, 50);
    jButtonAutoLoeschen.setFont (new Font("Arial", Font.PLAIN, 21));
    jButtonAutoLoeschen.setForeground(Color.black);
    jButtonAutoLoeschen.setText("Auto löschen");
    cp.add(jButtonAutoLoeschen);
    jButtonAutoLoeschen.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        jButtonAutoLoeschenActionPerformed(evt);
      }
    });

    jButtonZurueck.setBounds(680, 195, 225, 50);
    jButtonZurueck.setFont (new Font("Arial", Font.PLAIN, 21));
    jButtonZurueck.setForeground(Color.black);
    jButtonZurueck.setText("Zurück");
    cp.add(jButtonZurueck);
    jButtonZurueck.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        jButtonZurueckActionPerformed(evt);
      }
    });

    jLabelHersteller.setBounds(80, 20, 89, 24);
    jLabelHersteller.setText("Hersteller");
    jLabelHersteller.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelHersteller.setForeground(Color.black);
    cp.add(jLabelHersteller);
    jTextFieldHersteller.setBounds(340, 20, 275, 24);
    jTextFieldHersteller.setText("");
    cp.add(jTextFieldHersteller);
    jTextFieldModell.setBounds(340, 60, 275, 24);
    jTextFieldModell.setText("");
    cp.add(jTextFieldModell);
    jTextFieldFarbe.setBounds(340, 100, 275, 24);
    jTextFieldFarbe.setText("");
    cp.add(jTextFieldFarbe);
    jTextFieldKennzeichen.setBounds(340, 140, 275, 24);
    jTextFieldKennzeichen.setText("");
    cp.add(jTextFieldKennzeichen);
    jTextFieldPS.setBounds(340, 180, 275, 24);
    jTextFieldPS.setText("");
    cp.add(jTextFieldPS);
    jTextFieldKilometerstand.setBounds(340, 220, 275, 24);
    jTextFieldKilometerstand.setText("");
    cp.add(jTextFieldKilometerstand);
    jLabelModell.setBounds(80, 60, 60, 24);
    jLabelModell.setText("Modell");
    jLabelModell.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelModell.setForeground(Color.black);
    cp.add(jLabelModell);
    jLabelFarbe.setBounds(80, 100, 55, 24);
    jLabelFarbe.setText("Farbe");
    jLabelFarbe.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelFarbe.setForeground(Color.black);
    cp.add(jLabelFarbe);
    jLabelKennzeichen.setBounds(80, 140, 119, 24);
    jLabelKennzeichen.setText("Kennzeichen");
    jLabelKennzeichen.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelKennzeichen.setForeground(Color.black);
    cp.add(jLabelKennzeichen);
    jLabelPS.setBounds(80, 180, 127, 24);
    jLabelPS.setText("Leistung (PS)");
    jLabelPS.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelPS.setForeground(Color.black);
    cp.add(jLabelPS);
    jLabelKilometerstand.setBounds(80, 220, 139, 24);
    jLabelKilometerstand.setText("Kilometerstand");
    jLabelKilometerstand.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelKilometerstand.setForeground(Color.black);
    cp.add(jLabelKilometerstand);
    // Ende Komponenten
    
    // Die Groesse des Feldes, auf welches die Tabelle gesetzt werden soll, festlegen:
    ScrollFeld.setBounds(new Rectangle(50, 275, 900, 365));
    // das ScrollFeld dem Fenster hinzufuegen
    this.getContentPane().add(ScrollFeld);
    // Zeichenbereich des  ScrollFeldes bestimmen und die Tabelle darauf hinzufuegen
    ScrollFeld.getViewport().add(AutoTabelle);

    unserTabellenModell = new AutoTableModel();
    AutoTabelle.setModel(unserTabellenModell);

    mytme = new TableModelEvent(unserTabellenModell);

    this.setVisible(true);

    setResizable(false);
    setVisible(true);
  }

  // Anfang Ereignisprozeduren
  public void jButtonAutoSpeichernActionPerformed(ActionEvent evt)
  {

  }

  public void jButtonAutoLoeschenActionPerformed(ActionEvent evt)
  {

  }

  public void jButtonZurueckActionPerformed(ActionEvent evt)
  {
    dispose();
  }

  // Ende Ereignisprozeduren
}
 
Sorry falscher Code. Hier is der Richtige

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.TableModelEvent;
import java.io.*;
import java.util.List;
import java.lang.String;
import java.awt.print.*;
import java.text.StringCharacterIterator;

/**
  *
  * Beschreibung
  *
  * @version 1.0 vom 18.12.2007
  * @author
  */

public class KundenInputDialog extends JDialog
{
  private Kunde derKunde;

  // Anfang Variablen
  private JTextField jTextFieldName           = new JTextField();
  private JLabel jLabel1                      = new JLabel();
  private JLabel jLabelVorname                = new JLabel();
  private JTextField jTextFieldVorname        = new JTextField();
  private JLabel jLabelStrasseHausnummer      = new JLabel();
  private JLabel jLabelPLZWohnort             = new JLabel();
  private JLabel jLabelTelefonnummer          = new JLabel();
  private JLabel jLabelEmail                  = new JLabel();
  private JTextField jTextFieldStrasse        = new JTextField();
  private JTextField jTextFieldPLZ            = new JTextField();
  private JTextField jTextFieldTelefon        = new JTextField();
  private JTextField jTextFieldEmail          = new JTextField();
  private JTextField jTextFieldWohnort        = new JTextField();
  private JButton jButtonKundenSpeichern      = new JButton();
  private JButton jButtonKundenLoeschen       = new JButton();
  private JButton jButtonZurueck              = new JButton();
  private JTextField jTextFieldHausnummer     = new JTextField();
  // Ende Variablen
  
  JScrollPane ScrollFeld = new JScrollPane();
  
  JTable KundenTabelle = new JTable();
  
  TableModelEvent mytme;
  
  KundenTableModel unserTabellenModell;

  public KundenInputDialog(JFrame owner, String title, boolean modal)
  {
       // Dialog-Initialisierung
       super(owner, title, modal);
       addWindowListener(new WindowAdapter()
       {
        public void windowClosing(WindowEvent evt) { System.exit(0); }
       });
    int frameWidth = 1000;
    int frameHeight = 700;
    setSize(frameWidth, frameHeight);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    int x = (d.width - getSize().width) / 2;
    int y = (d.height - getSize().height) / 2 ;
    setLocation(x, y);
    Container cp = getContentPane();
    cp.setLayout(null);

    // Anfang Komponenten

    jTextFieldName.setBounds(340, 20, 275, 24);
    jTextFieldName.setText("");
    cp.add(jTextFieldName);
    jLabel1.setBounds(80, 20, 54, 24);
    jLabel1.setText("Name");
    jLabel1.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabel1.setForeground(Color.black);
    cp.add(jLabel1);
    jLabelVorname.setBounds(80, 60, 83, 24);
    jLabelVorname.setText("Vorname");
    jLabelVorname.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelVorname.setForeground(Color.black);
    cp.add(jLabelVorname);
    jTextFieldVorname.setBounds(340, 60, 275, 24);
    jTextFieldVorname.setText("");
    cp.add(jTextFieldVorname);
    jLabelStrasseHausnummer.setBounds(80, 100, 203, 24);
    jLabelStrasseHausnummer.setText("Straße / Hausnummer");
    jLabelStrasseHausnummer.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelStrasseHausnummer.setForeground(Color.black);
    cp.add(jLabelStrasseHausnummer);
    jLabelPLZWohnort.setBounds(80, 140, 137, 24);
    jLabelPLZWohnort.setText("PLZ / Wohnort");
    jLabelPLZWohnort.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelPLZWohnort.setForeground(Color.black);
    cp.add(jLabelPLZWohnort);
    jLabelTelefonnummer.setBounds(80, 180, 142, 24);
    jLabelTelefonnummer.setText("Telefonnummer");
    jLabelTelefonnummer.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelTelefonnummer.setForeground(Color.black);
    cp.add(jLabelTelefonnummer);
    jLabelEmail.setBounds(80, 220, 51, 24);
    jLabelEmail.setText("Email");
    jLabelEmail.setFont (new Font("Arial", Font.PLAIN, 19));
    jLabelEmail.setForeground(Color.black);
    cp.add(jLabelEmail);
    jTextFieldStrasse.setBounds(340, 100, 185, 24);
    jTextFieldStrasse.setText("");
    cp.add(jTextFieldStrasse);
    jTextFieldPLZ.setBounds(340, 140, 81, 24);
    jTextFieldPLZ.setText("");
    cp.add(jTextFieldPLZ);
    jTextFieldTelefon.setBounds(340, 180, 275, 24);
    jTextFieldTelefon.setText("");
    cp.add(jTextFieldTelefon);
    jTextFieldEmail.setBounds(340, 220, 275, 24);
    jTextFieldEmail.setText("");
    cp.add(jTextFieldEmail);
    jTextFieldWohnort.setBounds(430, 140, 185, 24);
    jTextFieldWohnort.setText("");
    cp.add(jTextFieldWohnort);
    jButtonKundenSpeichern.setBounds(680, 20, 225, 50);
    jButtonKundenSpeichern.setFont (new Font("Arial", Font.PLAIN, 21));
    jButtonKundenSpeichern.setForeground(Color.black);
    jButtonKundenSpeichern.setText("Kunden speichern");
    cp.add(jButtonKundenSpeichern);
    jButtonKundenSpeichern.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        jButtonKundenSpeichernActionPerformed(evt);
      }
    });

    jButtonKundenLoeschen.setBounds(680, 110, 225, 50);
    jButtonKundenLoeschen.setFont (new Font("Arial", Font.PLAIN, 21));
    jButtonKundenLoeschen.setForeground(Color.black);
    jButtonKundenLoeschen.setText("Kunden löschen");
    cp.add(jButtonKundenLoeschen);
    jButtonKundenLoeschen.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        jButtonKundenLoeschenActionPerformed(evt);
      }
    });

    jButtonZurueck.setBounds(680, 195, 225, 50);
    jButtonZurueck.setFont (new Font("Arial", Font.PLAIN, 21));
    jButtonZurueck.setForeground(Color.black);
    jButtonZurueck.setText("Zurück");
    cp.add(jButtonZurueck);
    jButtonZurueck.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        jButtonZurueckActionPerformed(evt);
      }
    });

    jTextFieldHausnummer.setBounds(536, 100, 80, 24);
    jTextFieldHausnummer.setText("");
    cp.add(jTextFieldHausnummer);
    
    // Ende Komponenten
    
    // Die Groesse des Feldes, auf welches die Tabelle gesetzt werden soll, festlegen:
    ScrollFeld.setBounds(new Rectangle(50, 275, 900, 365));
    // das ScrollFeld dem Fenster hinzufuegen
    this.getContentPane().add(ScrollFeld);
    // Zeichenbereich des  ScrollFeldes bestimmen und die Tabelle darauf hinzufuegen
    ScrollFeld.getViewport().add(KundenTabelle);
    
    unserTabellenModell = new KundenTableModel();
    KundenTabelle.setModel(unserTabellenModell);
    
    mytme = new TableModelEvent(unserTabellenModell);

    this.setVisible(true);
    
    setResizable(false);
    setVisible(true);
  }

  // Anfang Ereignisprozeduren
  public void jButtonKundenSpeichernActionPerformed(ActionEvent e)
  {
    derKunde.setName(jTextFieldName.getText());
    derKunde.setVorname(jTextFieldVorname.getText());
    derKunde.setStrasse(jTextFieldStrasse.getText());
    //derKunde.setHausnummer(jTextFieldHausnummer.getText());
    //derKunde.setPLZ(jTextFieldPLZ.getText());
    derKunde.setWohnort(jTextFieldWohnort.getText());
    //derKunde.setTelefon(jTextFieldTelefon.getText());
    derKunde.setEmail(jTextFieldEmail.getText());
  }

  public void jButtonKundenLoeschenActionPerformed(ActionEvent evt)
  {

  }

  public void jButtonZurueckActionPerformed(ActionEvent evt)
  {
   this.dispose();
  }

  // Ende Ereignisprozeduren
}
 
Code:
...
    public void jButtonKundenSpeichernActionPerformed(ActionEvent e) {
        derKunde = new Kunde();
        derKunde.setName(jTextFieldName.getText());
        derKunde.setVorname(jTextFieldVorname.getText());
        derKunde.setStrasse(jTextFieldStrasse.getText());
        //derKunde.setHausnummer(jTextFieldHausnummer.getText());
        //derKunde.setPLZ(jTextFieldPLZ.getText());
        derKunde.setWohnort(jTextFieldWohnort.getText());
        //derKunde.setTelefon(jTextFieldTelefon.getText());
        derKunde.setEmail(jTextFieldEmail.getText());
        String[] rowData = new String[]{derKunde.getName(), 
        derKunde.getVorname(), derKunde.getStrasse(), 
        derKunde.getWohnort(), derKunde.getEmail() };
        unserTabellenModell.addRow(rowData);
    }

    public void jButtonKundenLoeschenActionPerformed(ActionEvent evt) {
        int row = kundenTabelle.getSelectedRow();
        if(row > -1){
            unserTabellenModell.removeRow(row);
        }
    }

    public void jButtonZurueckActionPerformed(ActionEvent evt) {
        this.dispose();
    }

    // Ende Ereignisprozeduren
    public static void main(String[] args){
        KundenInputDialog dialog = new KundenInputDialog(new JFrame(), "Kunden Input", false);
        dialog.setVisible(true);
    }
}
class Kunde{
    private String wohnort;
    private String vorname;
    private String strasse;
    private String name;
    private String email;

    void setEmail(String text) {
        email = text;
    }

    void setName(String text) {
        name = text;
    }

    void setStrasse(String text) {
        strasse = text;
    }

    void setVorname(String text) {
        vorname = text;
    }

    void setWohnort(String text) {
        wohnort = text;
    }

    public String getEmail() {
        return email;
    }

    public String getName() {
        return name;
    }

    public String getStrasse() {
        return strasse;
    }

    public String getVorname() {
        return vorname;
    }

    public String getWohnort() {
        return wohnort;
    }
    
}
class KundenTableModel extends DefaultTableModel{
    public KundenTableModel(){
        super(null, new String[]{"Name", "Vorname", "Strasse", 
        "Wohnort", "Email"});
    }
    
}
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben