package test;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Test extends JFrame {
JLabel win,draw,lose,score,count;//设置标签,分别为赢、平、输、得分、总局
JLabel jl,jl1; //设置标签,分别为“电脑输出是”、“你输出的是”
final JLabel jl2,jl3;//设置标签,分别是电脑输出是与你输出的是的内容
JLabel jl4,jl5; //猜拳的结果显示“你赢了”,“你输了”,“平手”
public String person;
public String m;
int j;
int i;
int k;
int swin,sdraw,slose,sscore;
int flag1, count1;
final String[] car = new String[3];
public void Win0(String person) {
car[0] = "石头";
car[1] = "剪刀";
car[2] = "布";
person = car[j];
i = (int) (Math.random()*3);
if(i==0)
k=0;
else if(i==1)
k=1;
else if(i==2)
k=2;
String com=car[k] ;
//判断输赢
if (com.equals(person)) {
jl5.setText("平手");
flag1 = 0;
} else if (com.equals("剪刀") && person.equals("石头") ||
com.equals("石头")&& person.equals("布") ||
com.equals("布") && person.equals("剪刀")) {
jl5.setText("你赢了");
flag1 = 2;
} else {
jl5.setText("你输了");
flag1 = 1;
}
this.finalresult();
}
public Test() {
JFrame jf = new JFrame();
setSize(700, 700);
this.setTitle("猜拳游戏");
this.setLayout(null);
win = new JLabel("赢:"+swin);
draw = new JLabel("平:"+sdraw);
lose = new JLabel("输:"+slose);
score = new JLabel("得分:"+sscore);
count = new JLabel("总局:"+count1);
win.setBounds(50, 0, 80, 50);
draw.setBounds(130, 0, 80, 50);
lose.setBounds(210, 0, 80, 50);
score.setBounds(290, 0, 100, 50);
count.setBounds(450, 0,100, 50);
Font f1 = new Font("华文行楷",1,23);
win.setFont(f1);
draw.setFont(f1);
lose.setFont(f1);
score.setFont(f1);
count.setFont(f1);
win.setForeground(Color.blue);
draw.setForeground(Color.green);
lose.setForeground(Color.cyan);
score.setForeground(Color.red);
count.setForeground(Color.pink);
this.setBackground(Color.yellow);
this.add(win);
this.add(draw);
this.add(lose);
this.add(score);
this.add(count);
jl = new JLabel("电脑出的是:");
jl.setBounds(50, 100, 150, 70);
this.add(jl);
jl1 = new JLabel("你出的是:");
jl1.setBounds(50, 210, 150, 70);
this.add(jl1);
// 电脑的出的拳标签
jl2 = new JLabel();
jl2.setBounds(200, 100, 150, 70);
this.add(jl2);
//我出的拳的标签
jl3 = new JLabel();
jl3.setBounds(200, 210, 150, 70);
this.add(jl3);
jl4 = new JLabel("输出结果:");
jl4.setBounds(50, 500, 150, 70);
this.add(jl4);
jl5 = new JLabel("");
jl5.setBounds(200, 500, 150, 70);
this.add(jl5);
Font f2 = new Font("华文行楷",1,20);
jl.setFont(f2);
jl1.setFont(f2);
jl2.setFont(f2);
jl3.setFont(f2);
jl4.setFont(f2);
jl5.setFont(f2);
// 按钮
final JButton btn = new JButton("");
btn.setBounds(200, 210, 50, 70);
this.add(btn);
final JButton btn1 = new JButton("");
btn1.setBounds(280, 210, 50, 70);
this.add(btn1);
final JButton btn2 = new JButton("");
btn2.setBounds(360, 210, 50, 70);
this.add(btn2);
final JButton clear = new JButton("清除数据");
Font f3 = new Font("华文行楷",1,20);
clear.setFont(f3);
clear.setBounds(50, 380, 160, 50);
this.add(clear);
btn.setBorderPainted(false);
btn1.setBorderPainted(false);
btn2.setBorderPainted(false);
btn.setIcon(new ImageIcon("F:\\shitou.jpg"));
btn1.setIcon(new ImageIcon("F:\\jiandao.jpg"));
btn2.setIcon(new ImageIcon("F:\\bu.jpg"));
btn.addActionListener
(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
//如果你鼠标点击的是石头按钮
j = 0;
String b = btn.getActionCommand();
jl3.setText(b);
//jl3.setIcon(new ImageIcon(MyImg.class.getResource(j+".png")));
Win(person);
//Test.this.jl2.setIcon(new ImageIcon(MyImg.class.getResource(i+".png")));
Test.this.jl2.setText(car);
System.out.println(car);
}
}
);
btn1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
j = 1;
String b1 = btn1.getActionCommand();
jl3.setText(b1);
//jl3.setIcon(new ImageIcon(MyImg.class.getResource(j+".png")));
Win(person);
//Test.this.jl2.setIcon(new ImageIcon(MyImg.class.getResource(i+".png")));
Test.this.jl2.setText(car);
System.out.println(car);
System.out.println(b1);
}
});
btn2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
j = 2;
String b2 = btn2.getActionCommand();
jl3.setText(b2);
//jl3.setIcon(new ImageIcon(MyImg.class.getResource(j+".png")));
Win(person);
Test.this.jl2.setText(car);
System.out.println(car);
//Test.this.jl2.setIcon(new ImageIcon(MyImg.class.getResource (i+".png")));
System.out.println(b2);
}
});
clear.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource() == clear){
swin = 0;
sdraw = 0;
slose = 0;
sscore = 0;
count1 = 0;
win.setText("赢:" + swin);
draw.setText("平:" + sdraw);
lose.setText("输:" + slose);
score.setText("得分:" + sscore);
count.setText("总局:" + count1);
}
}
});
this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.setResizable(false);
}
private void finalresult() {
if(flag1==0){
sdraw ++;
draw.setText("平:"+sdraw);
score.setText("得分:"+sscore);
}
if(flag1==1){
slose ++;
sscore=sscore-1;
lose.setText("输:"+slose);
score.setText("得分:"+sscore);
}
if(flag1==2) {
swin ++;
sscore=sscore+1;
win.setText("赢:"+swin);
score.setText("得分:"+sscore);
}
count1=swin+slose+sdraw;
count.setText("总局:"+count1);
}
public static void main(String[] args) {
Test u= new Test();
}
}