Results 1 to 4 of 4
Thread: Stack Calculator
- 01-27-2011, 12:52 AM #1
Senior Member
- Join Date
- Oct 2010
- Location
- Newark,nj
- Posts
- 111
- Rep Power
- 0
Stack Calculator
Hey Guys just beginning to learn Gui.I have to create a stack calculator, I have wrote the code for all the format and its fine but i need to know how to make the "Buttons" to work.ps i dont really know how a stack cal works..
Java Code:import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.math.*; public class Calc extends JApplet { private JTextField num1Field; private JTextField num2Field; private JTextField num3Field; private JTextField num4Field; private JTextField num5Field; private JButton enterButton; private JButton plusButton; private JButton minusButton; private JButton multiButton; private JButton divisButton; public void init() { Container c = getContentPane(); c.setLayout(new GridLayout (5, 2)); num1Field = new JTextField(); c.add(num1Field); enterButton = new JButton("Enter"); c.add(enterButton); num2Field = new JTextField(); c.add(num2Field); plusButton = new JButton("+"); c.add(plusButton); num3Field = new JTextField(); c.add(num3Field); minusButton = new JButton("-"); c.add(minusButton); num4Field = new JTextField(); c.add(num4Field); multiButton = new JButton("*"); c.add(multiButton); num5Field = new JTextField(); c.add(num5Field); divisButton = new JButton("/"); c.add(divisButton); } public static void main(String args[]) { JFrame app = new JFrame("Calc"); JApplet applet = new Calc(); applet.init(); app.setContentPane(applet.getContentPane()); app.setSize(240, 100); app.setVisible(true); } } // ti.setText(t0.getText()); //copy t0 to t1) // to do + //getFloat from t0 and t1 . add the numbers //setFloat into t0,
- 01-27-2011, 01:01 AM #2
Add ActionListeners to them.how to make the "Buttons" to work
- 01-28-2011, 10:50 PM #3
Senior Member
- Join Date
- Oct 2010
- Location
- Newark,nj
- Posts
- 111
- Rep Power
- 0
UPDATED CODE WITH ACTION LISTENERS INSERTED ..DOESN'T SEEM TO CALCULATE PROPERLY ..
Java Code:import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.math.*; public class Calc extends JApplet { private JTextField num1field, num2field,num3field, num4field,num5field; private JButton enterButton,plusButton,minusButton, multiButton,divisButton; // *******************BUILD GUI ENVIRO***** public void init() { Container c = getContentPane(); c.setLayout(new GridLayout (5, 2)); num1field = new JTextField(); c.add(num1field); // **************CREATE ENTER BUTTON****** enterButton = new JButton("Enter"); c.add(enterButton); enterButton.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ num5field.setText((num4field.getText() == null) ? "" : num4field.getText()); num4field.setText((num3field.getText() == null) ? "" : num3field.getText()); num3field.setText((num2field.getText() == null) ? "" : num2field.getText()); num2field.setText((num1field.getText() == null) ? "" : num1field.getText()); num1field.setText((num3field.getText() == null) ? "" : num3field.getText()); } }); num2field = new JTextField(); c.add(num2field); //******************CREATES PLUS BUTTON ***** plusButton = new JButton("+"); c.add(plusButton); plusButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ setFloat(num1field, getFloat(num2field)+ getFloat(num1field)); setPopStack(); } }); num3field = new JTextField(); c.add(num3field); //******************Creates MINUS BUTTON******* minusButton = new JButton("-"); c.add(minusButton); minusButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setFloat(num1field, getFloat(num2field)- getFloat(num1field)); setPopStack(); } }); num4field = new JTextField(); c.add(num4field); //******************* Creates Multi Button********** multiButton = new JButton("*"); c.add(multiButton); multiButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ setFloat(num1field, getFloat(num2field)* getFloat(num1field)); setPopStack(); } }); num5field = new JTextField(); c.add(num5field); //**************** Creates Divis Button divisButton = new JButton("/"); c.add(divisButton); divisButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { setFloat(num1field, getFloat(num2field)/ getFloat(num1field)); setPopStack(); } }); }// end init() //******************DO COMPUTATION************ // RETURNS A FLOAT FROM A TEXT FIELD public float getFloat(JTextField t) { return Float.parseFloat(t.getText()); } // SET TEXT FIELD TO FLOATING POINT NUMBER public void setFloat(JTextField t, float p) { t.setText((new Float(p)).toString()); } //*******POPS STACK UP*********** public void setPopStack(){ num1field.setText((num2field.getText() == null || num2field.getText().equals("")) ? "" : num2field.getText()); num2field.setText((num3field.getText() == null || num3field.getText().equals("")) ? "" : num3field.getText()); num3field.setText((num4field.getText() == null || num4field.getText().equals("")) ? "" : num4field.getText()); num4field.setText(null); } public static void main(String args[]) { JFrame app = new JFrame("Bilals Calculator"); JApplet applet = new Calc(); applet.init(); app.setContentPane(applet.getContentPane()); app.setSize(240, 100); app.setVisible(true); } } // ti.setText(t0.getText()); //copy t0 to t1) // to do + //getFloat from t0 and t1 . add the numbers //setFloat into t0,
-
Similar Threads
-
Calculator
By water in forum AWT / SwingReplies: 4Last Post: 09-23-2009, 06:00 AM -
help with calculator
By kalibballer in forum New To JavaReplies: 8Last Post: 04-01-2009, 12:57 PM -
Problem in Calculator implementation using Stack
By realahmed8 in forum New To JavaReplies: 1Last Post: 12-19-2008, 11:58 PM -
Calculator help.
By madkidd02 in forum New To JavaReplies: 2Last Post: 10-25-2008, 07:42 AM


LinkBack URL
About LinkBacks
Reply With Quote

Bookmarks