I want to expand my knowledge of Java over the summer, so I'm working on calculator application armed with GUI, which is an applet, and I want it to do simple addition and subtraction for given numbers. I want to have both: .java
and .html
files. When I try to compile code of my application I get an error:
C:\Users\quinja>javac Calculator.java javac:
file not found: Calculator.java Usage:
javac use -help for a list of possible options
I cannot see any errors, but I'm new to Java, so If anyone could look at it and try to find anything causes errors, then I'll be grateful for explaining how to fix them.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Calculator {
public static void main(String[] args) {
CalculatorFrame frame = new CalculatorFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
// A frame with a calculator panel.
class CalculatorFrame extends JFrame {
public CalculatorFrame() {
setTitle("Calculator");
CalculatorPanel panel = new CalculatorPanel();
add(panel);
pack();
}
}
// A panel with calculator buttons and a result display.
class CalculatorPanel extends JPanel {
public CalculatorPanel() {
setLayout(new BorderLayout());
result = 0;
lastCommand = "=";
start = true;
// add the display
display = new JButton("0");
display.setEnabled(false);
add(display, BorderLayout.NORTH);
ActionListener insert = new InsertAction();
ActionListener command = new CommandAction();
// add the buttons in a 4 x 4 grid
panel = new JPanel();
panel.setLayout(new GridLayout(4, 4));
addButton("7", insert);
addButton("8", insert);
addButton("9", insert);
addButton("/", command);
addButton("4", insert);
addButton("5", insert);
addButton("6", insert);
addButton("*", command);
addButton("1", insert);
addButton("2", insert);
addButton("3", insert);
addButton("-", command);
addButton("0", insert);
addButton(".", insert);
addButton("=", command);
addButton("+", command);
add(panel, BorderLayout.CENTER);
}
/*
Adds a button to the center panel.
@param label the button label
@param listener the button listener
*/
private void addButton(String label, ActionListener listener) {
JButton button = new JButton(label);
button.addActionListener(listener);
panel.add(button);
}
/*
This action inserts the button action string to the
end of the display text.
*/
private class InsertAction implements ActionListener {
public void actionPerformed(ActionEvent event) {
String input = event.getActionCommand();
if (start) {
display.setText("");
start = false;
}
display.setText(display.getText() + input);
}
}
/*
This action executes the command that the button
action string denotes.
*/
private class CommandAction implements ActionListener {
public void actionPerformed(ActionEvent event) {
String command = event.getActionCommand();
if (start) {
if (command.equals("-")) {
display.setText(command);
start = false;
} else {
lastCommand = command;
}
} else {
calculate(Double.parseDouble(display.getText()));
lastCommand = command;
start = true;
}
}
}
/*
Carries out the pending calculation.
@param x the value to be accumulated with the prior result.
*/
public void calculate(double x) {
if (lastCommand.equals("+")) {
result += x;
} else if (lastCommand.equals("-")) {
result -= x;
} else if (lastCommand.equals("*")) {
result *= x;
} else if (lastCommand.equals("/")) {
result /= x;
} else if (lastCommand.equals("=")) {
result = x;
}
display.setText("" + result);
}
private JButton display;
private JPanel panel;
private double result;
private String lastCommand;
private boolean start;
}
This is because your cmd is pointining to the directory 'quinja' and your java file is at some other location . First try to point your cmd at the directory where your java file is and then compile..
You can use cd command to go to the desired directory. If you dont know how then tell me the path of your file and file name then I will tell you.
Respose after comment:
Open cmd and then type - cd java
javac yourfilename.java