package gui; import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.FileWriter; import java.io.IOException; import data.*; public class MainFrame extends JFrame { JTextField vorname = new JTextField (10); JTextField nachname = new JTextField (10); JTextField strasse = new JTextField (10); JTextField wohnort = new JTextField (10); JTextField telefon = new JTextField (10); JTextField email = new JTextField (10); public MainFrame () { setTitle("Adressverwaltung - 2007 by Hermann Wunner"); //Titelzeile setLocation(200,0); //Position setSize(800,600); //Grösse setVisible(true); //wird angezeigt setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //schliessen Container content = getContentPane(); JMenuBar menubar = new JMenuBar(); //die Menüleiste menubar.add(createDateiMenu()); menubar.add(createHilfeMenu()); JPanel menueleiste = new JPanel(); //Panel für die Menüleiste menueleiste.setLayout(new FlowLayout(FlowLayout.LEADING)); menueleiste.add(menubar, ComponentOrientation.LEFT_TO_RIGHT); JPanel dateneingabe = new JPanel(); //Panel für die Eingabe von Datensätzen dateneingabe.setLayout(new GridLayout(7,2)); dateneingabe.add(new JLabel(" Vorname :")); dateneingabe.add(vorname); dateneingabe.add(new JLabel(" Nachname :")); dateneingabe.add(nachname); dateneingabe.add(new JLabel(" Strasse :")); dateneingabe.add(strasse); dateneingabe.add(new JLabel(" Wohnort :")); dateneingabe.add(wohnort); dateneingabe.add(new JLabel(" Telefon :")); dateneingabe.add(telefon); dateneingabe.add(new JLabel(" E-Mail :")); dateneingabe.add(email); dateneingabe.add(createAbbrechenButton()); dateneingabe.add(createSpeichernButton()); content.add(menueleiste, BorderLayout.NORTH); content.add(dateneingabe, BorderLayout.WEST); pack(); } //hier folgt die Erzeugung der Menüleiste private JMenu createDateiMenu() //Der Menüpunkt "Datei" { JMenu datei = new JMenu("Datei"); //Auswahlmenü "Datei" datei.setMnemonic('d'); JMenuItem laden = new JMenuItem ("Laden"); //Menüpunkt "Laden" laden.setToolTipText("Läd eine bereits vorhandene Adressdatenbank"); datei.add(laden); JMenuItem speichern = new JMenuItem ("Speichern"); //Menüpunkt "Speichern" speichern.setToolTipText("speichert die aktuelle Adressdatenbank"); datei.add(speichern); datei.addSeparator(); JMenuItem beenden = new JMenuItem ("Beenden"); //Menüpunkt "Beenden" beenden.setToolTipText("Beendet das Programm"); datei.add(beenden); return datei; } private JMenu createHilfeMenu() //Der Menüpunkt "Hilfe" { JMenu hilfe = new JMenu ("Hilfe"); //Auswahlmenü "Hilfe hilfe.setMnemonic ('h'); JMenuItem ueber = new JMenuItem("Über"); //Menüpunkt "Über" hilfe.add(ueber); return hilfe; } //hier folgt die Erzeugung der buttons private JButton createSpeichernButton() //Der Button "Speichern" { JButton speichern = new JButton ("Speichern"); speichern.setToolTipText("Speichert den eingegebenen Datensatz"); speichern.addActionListener(new ActionListenerSaveButton()); return speichern; } private JButton createAbbrechenButton() //Der Button "Abbrechen" { JButton abbrechen = new JButton ("Zurücksetzen"); return abbrechen; } //hier folgt der ActionListoner public class ActionListenerSaveButton implements ActionListener { private AbstractButton speichern; public void actionPerformed(ActionEvent event) { //System.out.println("ActionPerformed: Button pressed"); //MainFrame hauptfenster2 = new MainFrame(); //hauptfenster2.setVisible(true); saveData(); } public void saveData() { File testfile = new File ("datenbank.txt"); //erzeugt ein neues File try { FileWriter ausgabeStream = new FileWriter (testfile); ausgabeStream.write(vorname.getText()+", "+nachname.getText()+", "+strasse.getText()+", "+telefon.getText()+", "+email.getText()+"\n"); ausgabeStream.close(); } catch(IOException ex) { System.err.println(ex.getLocalizedMessage()); } } } }