public class HauptFenster extends JFrame implements ActionListener
{
public static JTextField ein;
public static JLabel erg;
public HauptFenster(String[] args)
{
/**
* !! AUFBAU !!
* Auf der ContentPane liegen ein Panel für das Label, welches das Ergebnis zeigt,
* ein Panel das das Jahr-Label und das TextField enthält
* und ein Label, das den Berechnen-Button enthält.
* */
Container cp = getContentPane();
cp.setLayout( new BoxLayout(cp, BoxLayout.Y_AXIS) );
/** Enthält das Ergebnis */
JPanel ergP = new JPanel();
cp.add(ergP);
/** Zeigt das Ergebnis an */
erg = new JLabel("<html>Geben Sie ein Jahr zwischen 1900 und 2099 ein.
"+
"Klicken Sie dann auf [i]Berechnen[/i]</html>.");
ergP.add(erg);
/** Enthält "Jahr" u. TextField */
JPanel jahrP = new JPanel( new FlowLayout(FlowLayout.CENTER) );
cp.add(jahrP);
/** "Jahr" */
JLabel jahr = new JLabel("Jahr:");
jahrP.add(jahr);
/** TextField */
ein = new JTextField("2004");
jahrP.add(ein);
/** Einthält "Berechnen" */
JPanel berP = new JPanel( new FlowLayout(FlowLayout.CENTER) );
cp.add(berP);
/** "Berechnen"-Button */
JButton ber = new JButton("Berechnen");
berP.add(ber);
ber.setMnemonic('B');
ber.setActionCommand("ber");
ber.addActionListener(this);
getRootPane().setDefaultButton(ber);
//Wenn ein Argument übergeben wurde steht es im TextField und ist schon ausgerechnet
if(args.length >= 1) {
ein.setText(args[0]);
//Hier ist das Problem
}
}
public void actionPerformed(ActionEvent evt) {
String act = evt.getActionCommand();
if( act.equals("ber") ) {
String jahr = ein.getText();
erg.setText("Im Jahr "+jahr+" ist der Ostersonntag der "+
Ostertag_Berechner.getOstern( Integer.parseInt(jahr) )
);
}
}
}
}