网站建设资讯

NEWS

网站建设资讯

计算器按钮代码java,计算器按钮代码html

急求!!!如何用java程序代码实现计算器界面

package jisuanqi_new;

成都创新互联公司从2013年成立,是专业互联网技术服务公司,拥有项目成都网站设计、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元红安做网站,已为上家服务,为红安各地企业和个人服务,联系电话:028-86922220

import java.awt.*;

import java.awt.event.*;

public class JiSuanQi_new implements ActionListener

{

Panel p1;//声明面板p1

TextField t1;//声明文本行t1

String[] label = {"7","8","9","/","4","5","6","*","1","2","3","-","0",".","=","+"};//声明标签数组label1存放按钮上的标签

Button[] b;//声明按钮数组存放16个按钮

private int i;//声明i以备后用

private String op1 = "0";//运算数备用

private String operator = "+";//运算符备用

private boolean append = false;//备用

public JiSuanQi_new()//构造方法

{

t1=new TextField();//初始化文本行t1

b = new Button[label.length];//初始化按钮数组b

p1=new Panel();//初始化面板p1

p1.setLayout(new GridLayout(4,4,4,4));//使面板选择网格布局管理器以备储存16个按钮(4行4列)

for(int i=0;ib.length;i++)//利用for循环把标签放在按钮上,使每个按钮添加事件监听器,在面板p1上添加上16个按钮

{

b[i] = new Button(label[i]);//把标签依次放在16个按钮上

b[i].addActionListener(this);//使每个按钮添加动作事件监听器

p1.add(b[i]); //分别将按钮添加到面板p1上

}

Frame f=new Frame("计算器1.0");//初始化窗口f,起名字计算器1.0

f.setLayout(new BorderLayout());//为窗口选择边界布局管理器

f.add(BorderLayout.NORTH,t1);//把文本行他添加到窗口的北部

f.add(BorderLayout.CENTER,p1);//把面吧p1添加到窗口的中间

f.addWindowListener(new WindowAdapter(){//给窗口f添加窗口事件监听器

public void windowClosing(WindowEvent eve){//运行窗口关闭方法

System.exit(0);//退出程序

}

});

f.setSize(250, 250);//设置窗口大小

f.setLocation(200,200);

f.setVisible(true);//显示窗口

}

public static void main(String args[])

{

new JiSuanQi_new(); //调用构造方法

}

public void actionPerformed(ActionEvent ae)

{//按钮被操作发生

String comm = ae.getActionCommand();//返回与此动作相关的命令字符串,即:使用者第一次点击的按钮是什么。

if("0123456789".indexOf(comm)!=-1)//如果相关命令字符串为0~9之间的数字则执行

{

if(append){

String temp = t1.getText();//新数字

t1.setText(temp+comm);

}else{                         //因为此时append为false执行这个

t1.setText(comm); //将文本行t1设置为相关命令字符串(你按中的按钮代码)

append =  true;//此时append=true若继续按按钮若继续按数字的话1.第一次的按话不会改变2.非第一次按得话会覆盖之前按得数字(即缺点:只能进行单个数字的计算)

}

}

else if(("+-*/".indexOf(comm)!=-1))//如果相关命令字符串为+-*/之间的数字则执行

{

//保存

//t1.setText(comm);

op1 = t1.getText();//把第一个数赋值给op1

operator = comm;//把命令字符串赋值给operator

append = false;//此时append为false即若继续按按钮若按数字的话将重复上面的动作,按符号的话将覆盖之前的符号

}

else if("=".equals(comm))//如果按的是=号,则按条件进行下面的运算

{

String op2 = t1.getText();//op2第二个数

double d1 = Double.parseDouble(op1);

double d2 = Double.parseDouble(op2);

if(operator.equals("+")){

d1 = d1 + d2 ;

}else if(operator.equals("-")){

d1 = d1 - d2;

}else if(operator.equals("*")){

d1 = d1 * d2;

}else {

d1 = d1 / d2;

}

t1.setText(d1+"");//显示计算结果

append = false;

}

else if(".".equals(comm))//若是.号继续按

{

String temp = t1.getText();

if(temp.indexOf(".")==-1){

t1.setText(temp+".");

append = true;

}

}

}

}

java计算器16个按钮(要用for循环打出来的)源代码

自己写的,给你参考参考import java.awt.BorderLayout;

import java.awt.FlowLayout;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextField;public class Counter implements ActionListener{ /**

* @param args

*/

private JFrame frame;

private JTextField field;

private JButton clear_but;

private JButton[] buttons;

String str="123+456-789*0.=/";

public Counter() {

frame=new JFrame("计算器t\t\t\t\t\t\t");

field=new JTextField(15);

clear_but=new JButton("C");

buttons=new JButton[25];

for(int i=0;istr.length();i++)

{

buttons[i]=new JButton(str.substring(i, i+1));

}

field.setText("");

}

private void init(){

addEventHandler();

frame.setLayout(new BorderLayout());

JPanel n_panel=new JPanel();

JPanel c_panel=new JPanel();

n_panel.setLayout(new FlowLayout());

frame.add(n_panel,BorderLayout.NORTH);

n_panel.add(field);

n_panel.add(clear_but);

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

for(int i=0;i16;i++)

{

c_panel.add(buttons[i]);

}

frame.add(c_panel, BorderLayout.CENTER);

}

public void showMe(){

init();

frame.setSize(300, 240);

//frame.pack();// frame.setLocation(400,360);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

private void addEventHandler(){

//clear_but.addActionListener(new MyActionListener());

clear_but.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

field.setText("");

}

});

for(int i=0;i16;i++)

{

final int in=i;

buttons[i].addActionListener(this);

// @Override

// public void actionPerformed(ActionEvent e) {

// System.out.print(e.getActionCommand());

// //System.out.print(str.substring(in, in+1));

// }

//

}

}

String num="";

String flag="";

//@Override

public void actionPerformed(ActionEvent e) {

String str=e.getActionCommand();

if(str.equals("=")){

Double a=Double.valueOf(num);

Double b=Double.valueOf(field.getText());

double sum=0;

if(flag.equals("+")){

sum=a+b;

field.setText(sum+"");

}

if(flag.equals("-")){

sum=a-b;

field.setText(""+sum);

}

if(flag.equals("*")){

sum=a*b;

field.setText(""+sum);

}

if(flag.equals("/")){

sum=a/b;

field.setText(""+sum);

}

System.out.println(a+flag+b+"="+sum);

}

else if(".0123456789".indexOf(str)!=-1){

String newtext=field.getText();

newtext+=str;

field.setText(newtext);

//System.out.print(str);

}

else if(str.matches("[+*-/]{1}")){

//else if("+-*/".indexOf(str)!=-1){

num=field.getText();

field.setText("");

flag=str;

// System.out.print(str);

}

}

public static void main(String[] args) {

new Counter().showMe();

}}

求用JAVA实现计算器的代码(可实用的,没语法错误的)

import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.TitledBorder; //导包 public class Jisuanqi extends JFrame implements ActionListener { //继承JFrame 实现事件监听 private JTextField reasult; private JButton btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn0, btnAC, btnAdd, btnSub, btnReasult, btnD, btnAbout, btnCancel; private boolean add, sub, end, s, c; private String str; private double num1, num2; public Jisuanqi() { //构造属性 JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JPanel p3 = new JPanel(); TitledBorder tb = new TitledBorder("输出"); tb.setTitleColor(Color.BLUE); //标题边框底端线 设置颜色 btnAbout = new JButton(" 关于 "); btnCancel = new JButton("Cancel"); //两个按钮 btnCancel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ee) { System.exit(0); } }); //给Cancel添加事件监听 当鼠标点击时 程序结束 btnAbout.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ee) { JOptionPane.showMessageDialog(null, "黄盖!!", "消息", JOptionPane.INFORMATION_MESSAGE); } //给“关于”添加事件监听 当鼠标点击时 弹出对话框 显示黄盖 }); p3.add(btnAbout); p3.add(btnCancel); // JPanel p4=new JPanel(); // JPanel p5=new JPanel(); // reasult.setBorder(tb); reasult = new JTextField("0", 20); reasult.setEditable(false); //设置不能修改 reasult.setHorizontalAlignment(JTextField.RIGHT); // 设置文本的水平对齐方式。 reasult.setForeground(Color.BLUE); //颜色 p1.setBorder(tb); p1.add(reasult); btn0 = new JButton("0"); btn0.addActionListener(this); btn1 = new JButton("1"); btn1.addActionListener(this); btn2 = new JButton("2"); btn2.addActionListener(this); btn3 = new JButton("3"); btn3.addActionListener(this); btn4 = new JButton("4"); btn4.addActionListener(this); btn5 = new JButton("5"); btn5.addActionListener(this); btn6 = new JButton("6"); btn6.addActionListener(this); btn7 = new JButton("7"); btn7.addActionListener(this); btn8 = new JButton("8"); btn8.addActionListener(this); btn9 = new JButton("9"); btn9.addActionListener(this); btnD = new JButton("."); btnD.addActionListener(this); btnD.setForeground(Color.RED); btnAC = new JButton("AC"); btnAC.addActionListener(this); btnAC.setBackground(Color.PINK); btnAdd = new JButton("+"); btnAdd.addActionListener(this); btnAdd.setForeground(Color.BLUE); btnSub = new JButton("—"); btnSub.addActionListener(this); btnSub.setForeground(Color.BLUE); btnReasult = new JButton("="); btnReasult.addActionListener(this); btnReasult.setForeground(Color.RED); //事件监听 + 颜色 p2.add(btn1); p2.add(btn2); p2.add(btn3); p2.add(btn4); p2.add(btn5); p2.add(btn6); p2.add(btn7); p2.add(btn8); p2.add(btn9); p2.add(btn0); p2.add(btnD); p2.add(btnAC); p2.add(btnAdd); p2.add(btnSub); p2.add(btnReasult); //面板上添加按钮 p2.setLayout(new GridLayout(5, 3)); //面板上设置对齐方式 add(p1, BorderLayout.NORTH); add(p2, BorderLayout.CENTER); add(p3, BorderLayout.SOUTH); //将p1 p2 p3 面板对象添加到JFrame } public void num(int i) { String s = null; s = String.valueOf(i); if (end) { // 如果数字输入结束,则将文本框置零,重新输入 reasult.setText("0"); end = false; } if ((reasult.getText()).equals("0")) { // 如果文本框的内容为零,则覆盖文本框的内容 reasult.setText(s); } else { // 如果文本框的内容不为零,则在内容后面添加数字 str = reasult.getText() + s; reasult.setText(str); } }/* * * String s=null; * * s=String.valueOf(i); * * str=reasult.getText()+s; * * reasult.setText(str); * * } */ public void actionPerformed(ActionEvent e) { if (e.getSource() == btn1) num(1); else if (e.getSource() == btn2) num(2); else if (e.getSource() == btn3) num(3); else if (e.getSource() == btn4) num(4); else if (e.getSource() == btn5) num(5); else if (e.getSource() == btn6) num(6); else if (e.getSource() == btn7) num(7); else if (e.getSource() == btn8) num(8); else if (e.getSource() == btn9) num(9); else if (e.getSource() == btn0) num(0); else if (e.getSource() == btnAdd) { sign(1); btnD.setEnabled(true); } else if (e.getSource() == btnSub) { sign(2); btnD.setEnabled(true); } else if (e.getSource() == btnAC) { btnD.setEnabled(true); reasult.setText("0"); } else if (e.getSource() == btnD) { str = reasult.getText(); str += "."; reasult.setText(str); btnD.setEnabled(false); } else if (e.getSource() == btnReasult) { btnD.setEnabled(true); num2 = Double.parseDouble(reasult.getText()); if (add) { num1 = num1 + num2; } else if (sub) { num1 = num1 - num2; } reasult.setText(String.valueOf(num1)); end = true; } } public void sign(int s) { if (s == 1) { add = true; sub = false; } else if (s == 2) { add = false; sub = true; } num1 = Double.parseDouble(reasult.getText()); end = true; } //设计计算的过程 public static void main(String[] args) { Jisuanqi j = new Jisuanqi(); j.setTitle("+/-简易计算器"); j.setLocation(500, 280); j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //默认关闭可以关闭程序 j.setResizable(false); j.pack(); j.setVisible(true); } } 这个计算机,绝对让你满意


新闻标题:计算器按钮代码java,计算器按钮代码html
本文链接:http://cdweb.net/article/hdehsc.html