class DatenbankProbanden extends JDialog {
private static final long serialVersionUID = 2646319825833993564L;
// JDialog datenbankExport = new JDialog(f, true);
public DatenbankProbanden() {
Container containerDatenbank = this.getContentPane(); //--- legt die ContentPane auf den Container c
GridBagLayout gbl3 = new GridBagLayout(); //--- erzeugt ein GridBagLayout "gbl"
containerDatenbank.setLayout(gbl3); //--- setzt das "gbl" als aktuelles Layout
this.setModal(true);
this.setResizable(false); //--- legt fest, dass das hauptfenster nicht in der Grösse zu verändern ist
this.setTitle("...in Datenbank exportieren..."); //--- legt den Titel des hauptfensters fest
this.setBounds(350, 200, 700, 600); //--- bestimmt Ausgangspunkt und Ausmaße des fensters
String datenbankText = new String ("Probandinformationen: \n"); //--- erzeugt die Variable "infos" als String
JLabel text = new JLabel(datenbankText);
text.setFont(new Font("Verdana", Font.BOLD, 16));
text.setPreferredSize(new Dimension(350, 100));
probandSuchen.setPreferredSize(new Dimension(350,20));
probandenUebernehmen.setEnabled(false);
nameProband.setEnabled(false);
vornameProband.setEnabled(false);
geburtsdatumProband.setEnabled(false);
groesseProband.setEnabled(false);
geschlechtProband.setEnabled(false);
telefonProband.setEnabled(false);
emailProband.setEnabled(false);
probandenAnlegen.setEnabled(false);
probandenFinden();
addComponentHauptfenster (containerDatenbank, gbl3, text, 0, 0, 0, 1, 1, 0);
addComponentHauptfenster (containerDatenbank, gbl3, probandSuchen, 0, 1, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, probandAnzeigen, 1, 1, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, neuerProband, 2, 1, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JLabel(" "), 0, 2, 0, 1, 1, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("Name:"), 0, 3, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, nameProband, 1, 3, 1, 1, 1, 0);
addComponentHauptfenster (containerDatenbank, gbl3, probandenAnlegen, 2, 3, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("Vorname:"), 0, 4, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, vornameProband, 1, 4, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("Geburtsdatum: [TT.MM.JJJJ]"), 0, 5, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, geburtsdatumProband, 1, 5, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("Größe: [cm]"), 0, 6, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, groesseProband, 1, 6, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("Geschlecht: [m/w]"), 0, 7, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, geschlechtProband, 1, 7, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("Telefon:"), 0, 8, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, telefonProband, 1, 8, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JTextField("E-Mail:"), 0, 9, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, emailProband, 1, 9, 1, 1, 0, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JLabel(" "), 0, 10, 0, 1, 1, 0);
addComponentHauptfenster (containerDatenbank, gbl3, new JLabel(" "), 0, 11, 0, 1, 1, 0);
addComponentHauptfenster (containerDatenbank, gbl3, probandenUebernehmen, 0, 12, 0, 1, 1, 0);
addComponentHauptfenster (containerDatenbank, gbl3, datenbankProbandenAbbruch, 0, 13, 0, 1, 1, 0);
probandAnzeigen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//--- extrahiere den Primärschlüssel aus der Auswahl
String ID = probandSuchen.getSelectedItem().toString();
String[] probandDaten = ID.split( "\\~");
String probandID = probandDaten[0];
System.out.println(probandID);
//--- fülle die Felder mit den Inhalten aus db
nameProband.setText(probandDaten[1]);
nameProband.setDisabledTextColor(Color.BLUE);
vornameProband.setText(probandDaten[2]);
vornameProband.setDisabledTextColor(Color.BLUE);
geburtsdatumProband.setText(probandDaten[3]);
geburtsdatumProband.setDisabledTextColor(Color.BLUE);
groesseProband.setText(probandDaten[4]);
groesseProband.setDisabledTextColor(Color.BLUE);
geschlechtProband.setText(probandDaten[5]);
geschlechtProband.setDisabledTextColor(Color.BLUE);
telefonProband.setText(probandDaten[6]);
telefonProband.setDisabledTextColor(Color.BLUE);
emailProband.setText(probandDaten[7]);
emailProband.setDisabledTextColor(Color.BLUE);
probandenAnlegen.setEnabled(false);
probandenUebernehmen.setEnabled(true);
}});
neuerProband.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//--- TO DO: Sicherheitsabfrage zur Datenbank, ob Proband bereits vorhanden!!!
//--- alle TextFelder werden beschreibbar gemacht
nameProband.setEnabled(true);
vornameProband.setEnabled(true);
geburtsdatumProband.setEnabled(true);
groesseProband.setEnabled(true);
geschlechtProband.setEnabled(true);
telefonProband.setEnabled(true);
emailProband.setEnabled(true);
probandenUebernehmen.setEnabled(false);
datenbankProbandenAbbruch.setEnabled(true);
//--- alle Textfelder werden mit "" gefüllt
nameProband.setText("");
vornameProband.setText("");
geburtsdatumProband.setText("");
groesseProband.setText("");
geschlechtProband.setText("");
telefonProband.setText("");
emailProband.setText("");
probandenAnlegen.setEnabled(true);
}});
probandenAnlegen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
neuenProbandenAnlegen();
probandenFinden();
probandenAnlegen.setEnabled(false);
}});
probandenUebernehmen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String[] optionen = {"Ja", "Nein"};
int n = JOptionPane.showOptionDialog(null, "Sind ALLE Daten RICHTIG eingegeben?", "Prüfung", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, optionen, optionen[0]);
if (n == JOptionPane.YES_OPTION) {
//--- alles richtig eingegeben!
dateiWaehlen.setEnabled(true);
datenbankProbandenInfo.setBackground(Color.GREEN);
dbVerbindungTrennen(); //--- Trennt die Verbindung zur Datenbank
dispose();
}
else {
//--- zurück zur Eingabe!
}
}});
datenbankProbandenAbbruch.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//datenbank.setEnabled(false);
datenbankProbandenInfo.setBackground(Color.RED);
nameProband.setText("");
vornameProband.setText("");
geburtsdatumProband.setText("");
groesseProband.setText("");
geschlechtProband.setText("");
telefonProband.setText("");
emailProband.setText("");
dbVerbindungTrennen(); //--- Trennt die Verbindung zur Datenbank
dispose();
}});
this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); //---
}
}