Java Code

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GradeCalculator extends JApplet implements ActionListener
{
	JLabel  l_hw = new JLabel( "HW", JLabel.RIGHT ),  	 
		l_mt = new JLabel( "MT", JLabel.RIGHT ),
		l_final = new JLabel( "Final", JLabel.RIGHT ),  	 
		l_grade = new JLabel( "Grade: ", JLabel.RIGHT );
	JTextField	tf_hw = new JTextField(),   	
			tf_mt = new JTextField( ),
			tf_final = new JTextField( ), 	
			tf_grade = new JTextField( );
	JButton button = new JButton( "Calculate" );
	JComboBox  c_hw = new JComboBox( ),     
		c_mt = new JComboBox( ),	
		c_final = new JComboBox( );
	JLabel title = new JLabel( "Calculates Grade", JLabel.CENTER );

	public void init( )  
	{
		setLayout( new BorderLayout( ) );
		doTitle( );
		doMainPanel( );
	}

	public void doTitle( )   
	{
		Font f = new Font( "Serif", Font.BOLD+Font.ITALIC, 24 );
		title.setFont( f );
		add( title, BorderLayout.NORTH );		
	}

	public void setupDropdown( JComboBox c )   
	{
		for( int i=0; i<=100; i+=5 )
			c.addItem( ""+i );
	}

	public void doMainPanel( )   
	{
		setupDropdown( c_hw );
		setupDropdown( c_mt );
		setupDropdown( c_final );
		JPanel p = new JPanel( );
		p.setLayout( new GridLayout( 4,3 ) );
		p.add( l_hw );  	p.add( tf_hw );   	p.add( c_hw );
		p.add( l_mt );   	p.add( tf_mt );  	p.add( c_mt );
		p.add( l_final );  p.add( tf_final );  	p.add( c_final );
		p.add( button );
		p.add( l_grade );  p.add( tf_grade );
		add(p, BorderLayout.CENTER );
		button.addActionListener( this );
	}
	public void actionPerformed( ActionEvent event )   
	{
		Object obj = event.getSource( );
		if( obj == button )   {
			double finalgrade = calculate( );
			tf_grade.setText(""+finalgrade);
		}
	}
	public double calculate( )   
	{
		double hwd = dostuff( tf_hw.getText( ), c_hw.getSelectedItem( ) );
		double mtd = dostuff( tf_mt.getText( ), c_mt.getSelectedItem( ) );
		double finald = dostuff( tf_final.getText( ), c_final.getSelectedItem( ) );
		return hwd +mtd+finald;
	}
	public double dostuff( String grade, Object pct )   
	{
	    	String pctStr = (String )pct;
	    	if ( grade.length( ) == 0 )
	    	    return 0;
		double graded = Double.parseDouble(grade);
		double pctd = Double.parseDouble(pctStr);
		return graded * pctd / 100;
	}
}

Back to Code Examples
©2006- by E.S.Boese. All Rights Reserved