All pastes #918739 Raw Edit

Miscellany

public text v1 · immutable
#918739 ·published 2008-02-26 09:36 UTC
rendered paste body
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

   public class Applet1 extends JApplet {
    
      	String uitkomsten = "";
		int aantalGetallen = 0;
		int totaalGetal = 0;
		int gemiddeldGetal = 0;
		
	public void init() {
		//{{INIT_CONTROLS
		getContentPane().setLayout(null);
		setSize(405,375);
		getContentPane().add(getalTekst);
        getContentPane().add(gemiddeldeKnop);
        getContentPane().add(uitkomstenVeld);
        getContentPane().add(getallenTekst);
        getContentPane().add(gemiddeldeTekst);
        getContentPane().add(uitlegTekst);
        uitlegTekst.setBounds(10,1,400,27);
        uitlegTekst.setText("Click the button to see the average of the shown numbers.");
		getalTekst.setBounds(160,22,50,24);
        getalTekst.setFont(new Font("Dialog", Font.BOLD, 14));
        getalTekst.setForeground(java.awt.Color.blue);
		getallenTekst.setBounds(65,85,200,26);
		getallenTekst.setText("");
		getallenTekst.setVisible(false);
		uitkomstenVeld.setBounds(105,110,130,200);
		gemiddeldeKnop.setBounds(105,50,130,30);
		gemiddeldeKnop.setLabel("Bereken Gemiddelde");
		gemiddeldeTekst.setBounds(65, 310, 220, 26);
		gemiddeldeTekst.setText("");
		gemiddeldeTekst.setVisible(false);
		uitkomstenVeld.setVisible(false);
		uitkomstenVeld.setEditable(false);
		starttimer();
		//}}
		
	    //{{REGISTER_LISTENERS
		SymAction lSymAction = new SymAction();
		gemiddeldeKnop.addActionListener(lSymAction);
		//}}		
      }  
      
   	//{{DECLARE_CONTROLS
	java.awt.Label getalTekst = new java.awt.Label();
    java.awt.Button gemiddeldeKnop = new java.awt.Button();
    java.awt.TextArea uitkomstenVeld = new java.awt.TextArea();
    java.awt.Label getallenTekst = new java.awt.Label();
    java.awt.Label gemiddeldeTekst = new java.awt.Label();
    java.awt.Label uitlegTekst = new java.awt.Label();
  	//}}
  	
	Timer timer;
	    public void starttimer() {
	    timer = new Timer(1000, timerAction);
	    timer.start();
   }
   public void restartTimer() {
    timer.restart();
   }
   public void endAll() {
    timer.stop();
    gemiddeldeTekst.setVisible(true);
    getallenTekst.setVisible(true);
    uitkomstenVeld.setText(uitkomsten);
    uitkomstenVeld.setVisible(true);
    getallenTekst.setText("De volgende " + aantalGetallen + " getallen zijn gebruikt:");
    gemiddeldeTekst.setText("Het gemiddelde van deze getallen is: " + gemiddeldGetal + " (rounded).");
   }
     ActionListener timerAction = new ActionListener() {
     public void actionPerformed(ActionEvent evt) {
     int randGetal = (int)(Math.random() * 100 + 0.5);
     totaalGetal = randGetal + totaalGetal;
     aantalGetallen++;
     String nieuweUitkomst = String.valueOf(randGetal);
     String oudeUitkomst = String.valueOf(uitkomsten);
     uitkomsten = oudeUitkomst + nieuweUitkomst + "\n";
     gemiddeldGetal = totaalGetal / aantalGetallen;
     getalTekst.setText(String.valueOf(randGetal));
    }
  };
  	class SymAction implements java.awt.event.ActionListener
	{
		public void actionPerformed(java.awt.event.ActionEvent event)
		{
			Object object = event.getSource();
			if (object == gemiddeldeKnop)
				gemiddeldeKnop_ActionPerformed(event);
		}
	}

	void gemiddeldeKnop_ActionPerformed(java.awt.event.ActionEvent event)
	{
		if (uitkomsten.length() <= 0) {
		    return;
		}
		if (!gemiddeldeKnop.getLabel().equals("Again")) {
		gemiddeldeKnop.setLabel("Again");
		getalTekst.setVisible(false);
		endAll();
		return;
		}
	    gemiddeldeTekst.setVisible(false);
	    getallenTekst.setVisible(false);
	    uitkomstenVeld.setVisible(false);
	    gemiddeldeKnop.setLabel("Bereken Gemiddelde");
	    uitkomsten = "";
		aantalGetallen = 0;
		totaalGetal = 0;
		gemiddeldGetal = 0;
		getalTekst.setVisible(true);
		restartTimer();
	}
}