java计算器源代码不要界面_求java编程,windows的计算器界面,只要出现计算器界面,不要计算器的计算功能代码...

展开全部

public class Calculator extends JFrame {

public static void main(String[] args) {

// Create application frame.

Calculator frame = new Calculator();

frame.setTitle("Calculator");

frame.setSize(240, 320);

frame.setResizable(false);

frame.setDefaultCloseOperation(EXIT_ON_CLOSE);

frame.init();

// Show frame

frame.setVisible(true);

}

private void init()

{

textField = new JTextField();

textField.setEditable(false);

textField.setHorizontalAlignment (JTextField.RIGHT);

JPanel panel = new JPanel();

panel.setLayout(new GridLayout(4, 4));

Container container = getContentPane();

container.add(textField, BorderLayout.NORTH);

container.add(panel, BorderLayout.CENTER);

panel.add(useButton('7'));

panel.add(useButton('8'));

panel.add(useButton('9'));

panel.add(useButton('+'));

panel.add(useButton('4'));

panel.add(useButton('5'));

panel.add(useButton('6'));

panel.add(useButton('-'));

panel.add(useButton('1'));

panel.add(useButton('2'));

panel.add(useButton('3'));

panel.add(useButton('*'));

panel.add(useButton('0'));

panel.add(useButton('.'));

panel.add(useButton('='));

panel.add(useButton('/'));

}

public JButton useButton (final char key)

{

JButton button = new JButton(String.valueOf(key));

button.addActionListener(new ActionListener()

{

public void actionPerformed(ActionEvent event)

{

JButton btn = (JButton) event.getSource();

char key2 = btn.getText().charAt(0);

action(key2);

}

});

button.addKeyListener(new KeyAdapter()

{

public void keyReleased(KeyEvent event)

{

char key2 = event.getKeyChar ();

//if(key2 !62616964757a686964616fe59b9ee7ad9431333363383435= key)

//  return;

action(key2);

}

});

return button;

}

private void action(char key2)

{

if(reop)

{

textField.setText("");

reop = false;

}

switch(key2)

{

case '+':

v1 = Double.parseDouble(textField.getText());

textField.setText("");

operator = '+';

break;

case '-':

v1 = Double.parseDouble(textField.getText());

textField.setText("");

operator = '-';

break;

case '*':

v1 = Double.parseDouble(textField.getText());

textField.setText("");

operator = '*';

break;

case '/':

v1 = Double.parseDouble(textField.getText());

textField.setText("");

operator = '/';

break;

case '=':

reop = true;

v2 = Double.parseDouble(textField.getText());

switch(operator)

{

case '+':

value = v1 + v2;

break;

case '-':

value = v1 - v2;

break;

case '*':

value = v1 * v2;

break;

case '/':

value = v1 / v2;

break;

default: ;

}

textField.setText(String.valueOf(value));

break;

case '1':

case '2':

case '3':

case '4':

case '5':

case '6':

case '7':

case '8':

case '9':

case '0':

case '.':

String text = textField.getText() + key2;

textField.setText(text);

break;

default: ;

}

}

private JTextField textField;

private double v1, v2, value;

private char operator;

private boolean reop = false;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值