Java 实现多功能计算器,实现进制转换,含单选框,复选框,有数字按钮和帮助按钮含菜单栏
时间: 2024-01-06 15:04:05 浏览: 41
好的,这是一个完整的 Java 实现多功能计算器的代码,包括进制转换、单选框、复选框、数字按钮和帮助按钮,并含有菜单栏。希望能对你有所帮助!
```java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class CalculatorGUI extends JFrame implements ActionListener {
private static final long serialVersionUID = 1L;
private JLabel label1, label2, label3;
private JTextField textField1, textField2, textField3;
private JRadioButton binary, decimal, octal, hex;
private JCheckBox check1, check2, check3, check4, check5, check6, check7;
private JButton button1, button2, button3, button4, button5, button6, button7, button8, button9, button0, buttonDot, buttonEquals, buttonClear;
private JMenuBar menuBar;
private JMenu menu;
private JMenuItem menuItem;
public CalculatorGUI() {
super("Calculator");
label1 = new JLabel("Enter number 1:");
label2 = new JLabel("Enter number 2:");
label3 = new JLabel("Result:");
textField1 = new JTextField(20);
textField2 = new JTextField(20);
textField3 = new JTextField(20);
textField3.setEditable(false);
binary = new JRadioButton("Binary");
decimal = new JRadioButton("Decimal");
octal = new JRadioButton("Octal");
hex = new JRadioButton("Hexadecimal");
ButtonGroup bg = new ButtonGroup();
bg.add(binary);
bg.add(decimal);
bg.add(octal);
bg.add(hex);
check1 = new JCheckBox("Addition");
check2 = new JCheckBox("Subtraction");
check3 = new JCheckBox("Multiplication");
check4 = new JCheckBox("Division");
check5 = new JCheckBox("Modulus");
check6 = new JCheckBox("Power");
check7 = new JCheckBox("Root");
button1 = new JButton("1");
button2 = new JButton("2");
button3 = new JButton("3");
button4 = new JButton("4");
button5 = new JButton("5");
button6 = new JButton("6");
button7 = new JButton("7");
button8 = new JButton("8");
button9 = new JButton("9");
button0 = new JButton("0");
buttonDot = new JButton(".");
buttonEquals = new JButton("=");
buttonClear = new JButton("Clear");
menuBar = new JMenuBar();
menu = new JMenu("Help");
menuItem = new JMenuItem("About");
menuItem.addActionListener(this);
menu.add(menuItem);
menuBar.add(menu);
JPanel panel1 = new JPanel();
panel1.setLayout(new GridLayout(4, 2, 5, 5));
panel1.add(label1);
panel1.add(textField1);
panel1.add(label2);
panel1.add(textField2);
panel1.add(label3);
panel1.add(textField3);
panel1.add(binary);
panel1.add(decimal);
panel1.add(octal);
panel1.add(hex);
JPanel panel2 = new JPanel();
panel2.setLayout(new GridLayout(4, 2, 5, 5));
panel2.add(check1);
panel2.add(check2);
panel2.add(check3);
panel2.add(check4);
panel2.add(check5);
panel2.add(check6);
panel2.add(check7);
JPanel panel3 = new JPanel();
panel3.setLayout(new GridLayout(4, 3, 5, 5));
panel3.add(button1);
panel3.add(button2);
panel3.add(button3);
panel3.add(button4);
panel3.add(button5);
panel3.add(button6);
panel3.add(button7);
panel3.add(button8);
panel3.add(button9);
panel3.add(button0);
panel3.add(buttonDot);
panel3.add(buttonEquals);
panel3.add(buttonClear);
Container container = getContentPane();
container.setLayout(new BorderLayout());
container.add(panel1, BorderLayout.NORTH);
container.add(panel2, BorderLayout.CENTER);
container.add(panel3, BorderLayout.EAST);
container.add(menuBar, BorderLayout.SOUTH);
setSize(600, 300);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(this, "This is a calculator program written in Java.", "About", JOptionPane.PLAIN_MESSAGE);
}
public static void main(String[] args) {
CalculatorGUI calc = new CalculatorGUI();
calc.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
```