PositivSummering.java [Last ned]

/*
 * Programmet leser ett og ett positivt  heltall (kontrolleres),
 * og beregner summen av dem. Det er satt en lytter på tekstfeltet
 * som brukes til innlesing av tallene. Summen så langt vises i et
 * eget tekstfelt, mens feilmeldinger gis i et eget tekstfelt.
 */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class PositivSummering extends JFrame implements ActionListener {
 
  JTextField tallFelt, sumFelt, feilFelt;
  JButton sumKnapp, blankKnapp;
  int sum = 0;
 
  public static void main(String[] args)  {
    PositivSummering vindu = new PositivSummering();
    vindu.setTitle("Summering");
    vindu.setDefaultCloseOperation(EXIT_ON_CLOSE);
    vindu.opprettGUI();
    vindu.pack();
    vindu.setVisible(true);
  }
 
  private void opprettGUI() {
    setLayout( new FlowLayout() );
    JLabel tallEtikett = new JLabel("Tall:");
    add(tallEtikett);
    tallFelt = new JTextField(4);
    tallFelt.addActionListener(this);
    // Setter en lytter på dette tekstfeltet!
    // Trykk på Enter-knappen gir en hendelse.
    add(tallFelt);
    sumKnapp = new JButton(" + ");
    sumKnapp.addActionListener(this);
    add(sumKnapp);
    JLabel sumEtikett = new JLabel("Sum:");
    add(sumEtikett);
    sumFelt = new JTextField(4);
    add(sumFelt);
    blankKnapp = new JButton(" Blank ut ");
    blankKnapp.addActionListener(this);
    add(blankKnapp);
    feilFelt = new JTextField(14);
    add(feilFelt);
  }
 
  public void actionPerformed (ActionEvent e) {
    if ( e.getSource() == sumKnapp || e.getSource() == tallFelt )
      try {
        int tall = Integer.parseInt( tallFelt.getText() );
        if ( tall > 0 ) {
          sum += tall;
          sumFelt.setText(""+sum);
        }
        else
          feilFelt.setText("Kun positive tall!");
      }
      catch (Exception ex) {
       	feilFelt.setText("Ulovlig inndata!");
      }
    else if ( e.getSource() == blankKnapp ) {
      tallFelt.setText("");
      sumFelt.setText("");
      feilFelt.setText("");
      sum = 0;
    }
  }
 
}
Kildekode blir vist ved hjelp av GeSHi.