展开全部
应该相同吧,发个我写的,里面的图片没有,运行就不行了,看看e68a8462616964757a686964616f31333238653265重点部分的吧,参考下子
import java.awt.*;
import javax.swing.*;
import java.net.*;
import java.awt.event.*;
class Jst {
JFrame j1=new JFrame("计算器");
double re,rt,n;
String s=new String("");
String s1=new String("");
String s2=new String("");
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
URL url=getClass().getResource("go.gif");
Icon ic=new ImageIcon(url);
JLabel je=new JLabel(new ImageIcon(getClass().getResource("go1.jpg")));
Container c=j1.getContentPane();
JTextArea tf=new JTextArea(s);
JLabel ja=new JLabel(s2="第一次尝试,OK!");
char p,a;
JButton b1=new JButton(new ImageIcon(getClass().getResource("1.jpg")));
JButton b2=new JButton(new ImageIcon(getClass().getResource("2.jpg")));
JButton b3=new JButton(new ImageIcon(getClass().getResource("3.jpg")));
JButton b4=new JButton(new ImageIcon(getClass().getResource("4.jpg")));
JButton b5=new JButton(new ImageIcon(getClass().getResource("5.jpg")));
JButton b6=new JButton(new ImageIcon(getClass().getResource("6.jpg")));
JButton b7=new JButton(new ImageIcon(getClass().getResource("7.jpg")));
JButton b8=new JButton(new ImageIcon(getClass().getResource("8.jpg")));
JButton b9=new JButton(new ImageIcon(getClass().getResource("9.jpg")));
JButton ba=new JButton(new ImageIcon(getClass().getResource("10.jpg")));
JButton bb=new JButton(new ImageIcon(getClass().getResource("12.jpg")));
JButton bc=new JButton(new ImageIcon(getClass().getResource("13.jpg")));
JButton bd=new JButton(new ImageIcon(getClass().getResource("11.jpg")));
JButton bf=new JButton(new ImageIcon(getClass().getResource("15.jpg")));
JButton bg=new JButton(new ImageIcon(getClass().getResource("16.jpg")));
JButton bh=new JButton(new ImageIcon(getClass().getResource("14.jpg")));
Toolkit kit=Toolkit.getDefaultToolkit();
public void we(){
Image im=kit.createImage(getClass().getResource("图标.gif"));
j1.setIconImage(im);
tf.setLineWrap(true);
tf.setBackground(Color.BLACK);
c.setLayout(new BorderLayout());
c.setBackground(Color.WHITE);
j1.setVisible(true);
j1.setBounds(514,78,545,370);
JLabel l=new JLabel(ic,JLabel.CENTER);
l.setFont(new Font("计算器",Font.BOLD,40));
l.setSize(400,5);
j1.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
c.add(l,BorderLayout.NORTH);
c.setBackground(new Color(226,235,244));
tf.setFont(new Font(s+p+s1,Font.BOLD,23));
tf.setForeground(Color.orange) ;
tf.setSize(40,150);
ja.setForeground(Color.YELLOW);
ja.setFont(new Font(s2,Font.BOLD,15));
p2.setLayout(new GridLayout(3,1,0,0));
p2.setSize(350,300);
p2.setVisible(true);
p2.add(tf);
p2.add(je);
p2.add(ja);
p2.setBackground(Color.BLACK);
p1.setBorder(BorderFactory.createLineBorder(new Color(197,215,235),5 ));
p2.setBorder(BorderFactory.createLineBorder(Color.YELLOW, 5));
p1.add(b1);
p1.add(b2);
p1.add(b3);
p1.add(b4);
p1.add(b5);
p1.add(b6);
p1.add(b7);
p1.add(b8);
p1.add(b9);
p1.add(ba);
p1.add(bb);
p1.add(bc);
p1.add(bd);
p1.add(bf);
p1.add(bg);
p1.add(bh);
b1.setBorderPainted(false);
b2.setBorderPainted(false);
b3.setBorderPainted(false);
b4.setBorderPainted(false);
b5.setBorderPainted(false);
b6.setBorderPainted(false);
b7.setBorderPainted(false);
b8.setBorderPainted(false);
b9.setBorderPainted(false);
ba.setBorderPainted(false);
bb.setBorderPainted(false);
bc.setBorderPainted(false);
bd.setBorderPainted(false);
bh.setBorderPainted(false);
bf.setBorderPainted(false);
bg.setBorderPainted(false);
b1.addActionListener(new action1());
b2.addActionListener(new action1());
b3.addActionListener(new action1());
b4.addActionListener(new action1());
b5.addActionListener(new action1());
b6.addActionListener(new action1());
b7.addActionListener(new action1());
b8.addActionListener(new action1());
b9.addActionListener(new action1());
ba.addActionListener(new action1());
bb.addActionListener(new action1());
bc.addActionListener(new action1());
bd.addActionListener(new action1());
bf.addActionListener(new action1());
bg.addActionListener(new action1());
p1.setLayout(new GridLayout(4,4,0,0));
p1.setSize(50,150);
p1.setVisible(true);
c.add(p1,BorderLayout.WEST);
c.add(p2,BorderLayout.EAST);
bh.addFocusListener(new FocusListener(){
public void focusLost(FocusEvent d){
ja.setText("请依次输入数值!");
}
public void focusGained(FocusEvent d){
bh.addActionListener(new action());
}
}) ;
}
class action1 implements ActionListener{
public void actionPerformed(ActionEvent e){
if(e.getSource()==b1){
if(p==0)
{
s=s+"1"; tf.setText(s);}
else
{
s1=s1+"1";tf.setText(s+p+s1);}
}
if(e.getSource()==b2){
if(p==0){
s=s+"2";
tf.setText(s);
}
else
{
s1=s1+"2";
tf.setText(s+p+s1);
}
}
if(e.getSource()==b3){
if(p==0)
{
s=s+"3";
tf.setText(s);
}
else
{
s1=s1+"3";tf.setText(s+p+s1);}}
if(e.getSource()==b4){
if(p==0)
{
s=s+"4";
tf.setText(s);
}
else
{
s1=s1+"4";
tf.setText(s+p+s1);
}
}
if(e.getSource()==b5){
if(p==0)
{
s=s+"5";tf.setText(s);}
else
{
s1=s1+"5";tf.setText(s+p+s1);}
}
if(e.getSource()==b6){
if(p==0)
{
s=s+"6";tf.setText(s);}
else
{
s1=s1+"6";tf.setText(s+p+s1);}
}
if(e.getSource()==b7){
if(p==0)
{
s=s+"7";tf.setText(s);}
else
{
s1=s1+"7";tf.setText(s+p+s1);}
}
if(e.getSource()==b8){
if(p==0)
{
s=s+"8";
tf.setText(s);}
else
{
s1=s1+"8";tf.setText(s+p+s1);}
}
if(e.getSource()==b9){
if(p==0)
{
s=s+"9";tf.setText(s);}
else
{
s1=s1+"9";tf.setText(s+p+s1);}
}
if(e.getSource()==ba){
if(p==0)
{
s=s+"0";tf.setText(s);}
else
{ s1=s1+"0";tf.setText(s+p+s1);}
}
if(e.getSource()==bb){
if(p>0)
{
re=Double.parseDouble(s);
rt=Double.parseDouble(s1);
int x=p;
switch(x){
case '+':n=rt+re;s=String.valueOf(n);tf.setText(s+"+");break;
case '-':n=re-rt;s=String.valueOf(n);tf.setText(s+"+");break;
case '*':n=rt*re;s=String.valueOf(n);tf.setText(s+"+");break;
case '/':n=re/rt;s=String.valueOf(n);tf.setText(s+"+");break;
}
p='+';
s1="";
}
else
{if(s.length()<1)
{ s="0";ja.setText("请正确输入第一个数!");}
p='+';
tf.setText(s+"+");}
}
if(e.getSource()==bc){
if(p>0)
{
re=Double.parseDouble(s);
rt=Double.parseDouble(s1);
int x=p;
switch(x){
case '+':n=rt+re;s=String.valueOf(n);tf.setText(s+"-");break;
case '-':n=re-rt;s=String.valueOf(n);tf.setText(s+"-");break;
case '*':n=rt*re;s=String.valueOf(n);tf.setText(s+"-");break;
case '/':n=re/rt;s=String.valueOf(n);tf.setText(s+"-");break;
}
s1="";
p='-';
}
else
{if(s.length()<1)
{s="0";ja.setText("请输入第一个数!");}
p='-';
tf.setText(s+"-");}
}
if(e.getSource()==bd){
if(p>0)
{
re=Double.parseDouble(s);
rt=Double.parseDouble(s1);
int x=p;
switch(x){
case '+':n=rt+re;s=String.valueOf(n);tf.setText(s+"*");break;
case '-':n=re-rt;s=String.valueOf(n);tf.setText(s+"*");break;
case '*':n=rt*re;s=String.valueOf(n);tf.setText(s+"*");break;
case '/':n=re/rt;s=String.valueOf(n);tf.setText(s+"*");break;
}
s1="";
p='*';
}
else
{ if(s.length()<1){
s="0";
ja.setText("请输入第一个数!");
}
p='*';
tf.setText(s+"*");
}
}
if(e.getSource()==bf){
if(p>0)
{
re=Double.parseDouble(s);
rt=Double.parseDouble(s1);
int x=p;
switch(x){
case '+':n=rt+re;s=String.valueOf(n);tf.setText(s+"/");break;
case '-':n=re-rt;s=String.valueOf(n);tf.setText(s+"/");break;
case '*':n=rt*re;s=String.valueOf(n);tf.setText(s+"/");break;
case '/':n=re/rt;s=String.valueOf(n);tf.setText(s+"/");break;
}
s1="";
p='/';
}
else{
if(s.length()<1){
s="0";
ja.setText("请正确输入第一个数!");}
p='/';
tf.setText(s+"/");}
}
if(e.getSource()==bg){
if(p<1)
s=s+".";
else
{s1=s1+".";
tf.setText(s+p+s1);}
}}
}
class action implements ActionListener{
public void actionPerformed(ActionEvent e){
if(s.length()==0){
s="0";
ja.setText("请重新输入第一个数!");}
if(s1.length()==0)
{s1="0";}
re=Double.parseDouble(s);
rt=Double.parseDouble(s1);
int x=p;
switch(x){
case '+':n=rt+re; tf.setText(s+p+s1+"="+n);break;
case '-':n=re-rt; tf.setText(s+p+s1+"="+n);break;
case '*':n=rt*re; tf.setText(s+p+s1+"="+n);break;
case '/':n=re/rt;if(rt==0){ tf.setText(s+p+s1+"="+"无效结果");}else tf.setText(s+p+s1+"="+n) ;break;
default:s2="您的输入有误!";}
p=0;s1=s="";
tf.setCaretPosition(0);
}}
}
public class Js{
public static void main(String args[]){
new Jst().we();
}
}
已赞过
已踩过<
你对这个回答的评价是?
评论
收起