The popular (mis) perception of programmers is that they spend all of their time in darkened rooms, working with millions…
Computer programming may seem like a highly complicated discipline but at its roots, every program actually begins as a simple…
Computer programming is one of the fields under computer science. While computer science refers to the study of computer applications,…
Computer programming is one of the most important and exciting careers today. It is also a field that offers plenty…
Computer programming has its own language, and that’s just the beginning of the software adventure. There are many different languages…
Before looking at the different examples of programming functions, it is best to understand the purpose and definition of function.…
So you want to learn computer programming. You’ve made a good choice. Computer programming is a very exciting field of…
Computer programmers use a range of terminologies that make sense only to them and to their colleagues. For other people…
If it’s the history of programming that has to be retold, then it is safe to begin an account with…
Computer programming is a phrase that is bandied about quite heavily, but only few people actually understand its implications. The…
Simple Java GUI Calculator that performs simple interest calculation.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
import java.awt.*; import java.awt.event.*; import java.awt.event.ActionListener; import javax.swing.*; import javax.swing.border.TitledBorder; public class ModifiedGUISimpleInterestCalculator extends JFrame { //create TextFields for principal, rate and time private JTextField principal = new JTextField(); private JTextField rate = new JTextField(); private JTextField time = new JTextField(); private JTextField simpleInterest = new JTextField(); // calculate JButton private JButton clear = new JButton("Clear"); private JButton calculate = new JButton("Calculate"); //private JButton clear = new JButton("Clear"); //create JTextArea JTextArea area = new JTextArea(1, 1); public ModifiedGUISimpleInterestCalculator() { // panel panel to hold labels and text fields JPanel panel1 = new JPanel(new GridLayout(5, 2)); panel1.add(new JLabel("Enter Principal")); panel1.add(principal); panel1.add(new JLabel("Enter Rate")); panel1.add(rate); panel1.add(new JLabel("Enter Time")); panel1.add(time); panel1.add(new JLabel("Simple Interest")); panel1.add(simpleInterest); panel1.setBorder(new TitledBorder("Enter Principal, Rate (as decimal e.g 0.1 for 10%) and Time.")); principal.setBorder(BorderFactory.createEtchedBorder()); rate.setBorder(BorderFactory.createEtchedBorder()); time.setBorder(BorderFactory.createEtchedBorder()); simpleInterest.setBorder(BorderFactory.createEtchedBorder()); simpleInterest.setEditable(false); simpleInterest.setForeground(Color.RED); // Panel p2 to hold the button JPanel panel2 = new JPanel(new FlowLayout(FlowLayout.RIGHT)); //panel2.add(clear); panel2.add(clear); panel2.add(calculate); // Add the panels to the frame add(panel1, BorderLayout.CENTER); add(panel2, BorderLayout.SOUTH); area.setForeground(Color.BLACK); area.setBackground(Color.WHITE); area.setLineWrap(true); area.setWrapStyleWord(true); area.setEditable(false); calculate.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // Get values from text fields try { double amount = Double.parseDouble(principal.getText()); double rateOfInterest = Double.parseDouble(rate.getText()); double year = Double.parseDouble(time.getText()); String interest = "" + (amount * rateOfInterest * year); // Display simple interest simpleInterest.setText((interest)); } catch (Exception f) { JOptionPane.showMessageDialog(rootPane, "ERROR: " + (f.getMessage())); } String amountField = principal.getText(); String rateOfInterestField = rate.getText(); String yearField = time.getText(); if (e.getSource() == calculate) { if ("".equals(amountField) || "".equals(rateOfInterestField) || "".equals(yearField)) { String emptyFieldWarning; emptyFieldWarning = "One or more fields is/are empty!"; JOptionPane.showMessageDialog(rootPane, emptyFieldWarning); } } } }); clear.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // Get values from text fields try { principal.setText(""); rate.setText(""); time.setText(""); simpleInterest.setText(""); } catch (Exception f) { } } }); } //create main method to run application public static void main(String[] args) { ModifiedGUISimpleInterestCalculator calculator = new ModifiedGUISimpleInterestCalculator(); calculator.setSize(360, 200); calculator.setTitle(" Simple Interest Calculator "); calculator.setResizable(false); calculator.setVisible(true); calculator.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } |
Below is a screenshot of the output when the program is run. Click…
Below is a simple program to compare two numbers using Java. It is the solution to Deitel’s Java How to…