import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class FensterTest2 extends JFrame
{

  //Attribute
  private JLabel lb_Header = new JLabel();
  private JTextArea ta_Ausgabe = new JTextArea();
  private JScrollPane jSp1_ta_Ausgabe = new JScrollPane();
  private JButton bt_Start = new JButton();
  private JTextField tf_Eingabe = new JTextField();
  private JButton bt_Fortfahren = new JButton();
  


  //Konstruktor
  public FensterTest2(String title)
  {
    //Alles rund ums Fenster
    super(title);
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent evt) { System.exit(0); }
    });
    setSize(300, 300);
    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);


    ///////////////////////////////
    //Alles rund um die Komponenten
    
    //Label
    lb_Header.setBounds(50, 10, 200, 16);
    lb_Header.setText("Eingabe Test");
    lb_Header.setFont(new Font("MS Sans Serif", Font.PLAIN, 13));
    cp.add(lb_Header);

    //TextArea
    jSp1_ta_Ausgabe.setBounds(50, 50, 200, 150);
    ta_Ausgabe.setText("Status:\n");
    ta_Ausgabe.setEditable(false);
    jSp1_ta_Ausgabe.setViewportView(ta_Ausgabe);
    cp.add(jSp1_ta_Ausgabe);
    
    //Button1
    bt_Start.setBounds(20, 240, 120, 25);
    bt_Start.setText("Schritt 1");
    cp.add(bt_Start);
    bt_Start.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        bt_StartActionPerformed(evt);
      }
    });

    //TextFeld
    tf_Eingabe.setBounds(50, 210, 200, 18);
    tf_Eingabe.setText("(Bitte tata eingeben)");
    tf_Eingabe.setFont(new Font("MS Sans Serif", Font.PLAIN, 13));
    cp.add(tf_Eingabe);

    //Button2
    bt_Fortfahren.setBounds(160, 240, 120, 25);
    bt_Fortfahren.setText("Schritt 2");
    bt_Fortfahren.setEnabled(false);
    cp.add(bt_Fortfahren);
    bt_Fortfahren.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent evt) {
        bt_FortfahrenActionPerformed(evt);
      }
    });


    setResizable(false);
    setVisible(true);

  }
  
  //Methoden für Buttons
  public void bt_StartActionPerformed(ActionEvent evt)
  {
    if (tf_Eingabe.getText().equals("tata"))
    {
      bt_Fortfahren.setEnabled(true);
      bt_Start.setEnabled(false);
      tf_Eingabe.setEnabled(false);
      ta_Ausgabe.append("Sie können jetzt auf Fortfahren klicken\n");
    }
    else
    {
      ta_Ausgabe.append("Falsche Eingabe\n");
      tf_Eingabe.setText("(Bitte tata eingeben)");
    }

  }
  
  public void bt_FortfahrenActionPerformed(ActionEvent evt)
  {
    int i1 = abfrage();
    if(i1 == 0 )
    {
      bt_Fortfahren.setEnabled(false);
      ta_Ausgabe.append("Du hast soeben die geheime Botschaft anzeigen lassen.");
    }
    if(i1 == 1)
    {
      tf_Eingabe.setText("(Bitte tata eingeben)");
      tf_Eingabe.setEnabled(true);
      bt_Start.setEnabled(true);
      bt_Fortfahren.setEnabled(false);
      ta_Ausgabe.setText("Status:\n");
    }
  }
  
  //Abfrage Dialog
  public int abfrage() {
    return JOptionPane.showConfirmDialog(this, "Möchten sie das große Geheimnis lüften?", "Frage!", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
  }
  
  public static void main(String[] args) {
    new FensterTest2("Eingabe verarbeiten");
  }
}

