The Artima Developer Community
Sponsored Link

Java Answers Forum
JApplet Problem - please help

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Maria

Posts: 2
Nickname: laurare
Registered: Dec, 2003

JApplet Problem - please help Posted: Dec 7, 2003 7:23 AM
Reply to this message Reply
Advertisement
Hi everybody,

I'm trying to make this calculator program work as an applet and as an application. I tried using:

public class calcg extends JApplet implements ActionListener{

in many different ways, but it didn't work. Can sombody help me make it work?

Below is the source code for my calculator program.

Thanks in advance,

-Maria

ps-You can also e-mail me at laurare@rocketmail.com


// calculator
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;

public class calcg extends JFrame implements ActionListener
{
private JButton one, two, three, four, five, six, seven,
eight, nine, zero, dec, eq, plus, minus, mult, div, clear;
private JLabel output, spacer;
private Container container;
private String operation;
private double num1, num2, answer;
private boolean clear_flag = false;

//set up GUI
public calcg()
{
//Create Title
super("Calculator");
JPanel container = new JPanel();
container.setLayout( new FlowLayout( FlowLayout.CENTER
) );

output = new JLabel("");
output.setBorder(new MatteBorder(2,2,2,2,Color.gray));
output.setPreferredSize(new Dimension(1,26));
getContentPane().setBackground(Color.white);
getContentPane().add( "North",output );
getContentPane().add( "Center",container );

//set up spacer
spacer = new JLabel( "
" );
container.add( spacer );

//set up clear
clear = new JButton( "CE" );
clear.addActionListener(this);
container.add( clear );

//set up seven and register its event handler
seven = new JButton( "7" );
seven.addActionListener(this);
container.add( seven );


//set up eight
eight = new JButton( "8" );
eight.addActionListener(this);
container.add( eight );

//set up nine
nine = new JButton( "9" );
nine.addActionListener(this);
container.add( nine );

//set up div
div = new JButton( "/" );
div.addActionListener(this);
container.add( div );

//set up four
four = new JButton( "4" );
four.addActionListener(this);
container.add( four );

//set up five
five = new JButton( "5" );
five.addActionListener(this);
container.add( five );

//set up six
six = new JButton( "6" );
six.addActionListener(this);
container.add( six );

//set up mult
mult = new JButton( "*" );
mult.addActionListener(this);
container.add( mult );

//set up one
one = new JButton( "1" );
one.addActionListener(this);
container.add( one );

//set up two
two = new JButton( "2" );
two.addActionListener(this);
container.add( two );

//set up three
three = new JButton( "3" );
three.addActionListener(this);
container.add( three );

//set up minus
minus = new JButton( "-" );
minus.addActionListener(this);
container.add( minus );

//set up zero
zero = new JButton( "0" );
zero.addActionListener(this);
container.add( zero );

//set up dec
dec = new JButton( "." );
dec.addActionListener(this);
container.add( dec );

//set up eq
eq = new JButton( "=" );
eq.addActionListener(this);
container.add( eq );

//set up plus
plus = new JButton( "+" );
plus.addActionListener(this);
container.add( plus );

//Set size and make visible
setSize( 190, 225 );
setVisible( true );
setResizable( false );
}

public void actionPerformed(ActionEvent ae)
{
JButton but = ( JButton )ae.getSource();

//Handle what button was pushed
//Action for dec button
if( but.getText() == "." )
{
//if dec is pressed, first check to make shure there
is not already a decimal
String temp = output.getText();
if( temp.indexOf( '.' ) == -1 )
output.setText( output.getText() + but.getText() );
}

//Action for clear button
else if( but.getText() == "CE" )
{
output.setText( "" );
operation = "";
num1 = 0.0;
num2 = 0.0;
}

//Action for plus button
else if( but.getText() == "+" )
{
operation = "+";
num1 = Double.parseDouble( output.getText() );
clear_flag = true;
//output.setText( "" );
}

//Action for minus button
else if( but.getText() == "-" )
{
operation = "-";
num1 = Double.parseDouble( output.getText() );
clear_flag = true;
//output.setText( "" );
}

//Action for mult button
else if( but.getText() == "*" )
{
operation = "*";
num1 = Double.parseDouble( output.getText() );
clear_flag = true;
//output.setText( "" );
}

//Action for div button
else if( but.getText() == "/" )
{
operation = "/";
num1 = Double.parseDouble( output.getText() );
clear_flag = true;
//output.setText( "" );
}

//Action for eq button
else if( but.getText() == "=" )
{
num2 = Double.parseDouble( output.getText() );
//handle addition
if( operation == "+" )
answer = num1 + num2;
else if( operation == "-" )
answer = num1 - num2;
else if( operation == "*" )
answer = num1 * num2;
else if( operation == "/" )
answer = num1 / num2;

//display answer in output field
output.setText( String.valueOf( answer ) );

clear_flag = true;
operation = "";
}

//Default action should only be used for numbers
else
{
if( clear_flag == true )
{
output.setText( "" );
clear_flag = false;
}
output.setText( output.getText() + but.getText() );
}
}

//execute application
public static void main( String args[] )
{
calcg application = new calcg();

application.setDefaultCloseOperation(
JFrame.EXIT_ON_CLOSE );
}
}

Topic: File transfer Previous Topic   Next Topic Topic: exception handling

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use