有甲乙双方猜拳,投注其中一方,猜赢家,猜中即赢,猜错即输,四个按钮,一个是“甲方赢”,一个是“乙方赢”,一个“开始”,一个“停止”;两个图片,分别是甲乙方的石头剪刀布其中一个的图片。先点击“甲方赢”或“乙方赢”,然后点击“开始”,图片开始随机变换,最后点击“停止”,图片停止变换,输出一个输赢结果。
1条回答 默认 最新
- CSDN专家-sinJack 2021-12-29 16:05关注
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.JPanel; import javax.swing.JLabel; import java.lang.Thread; import javax.swing.JTextField; import java.util.Random; import java.lang.Runnable; public class caiiquan extends JFrame { public int flag1; public static void main(String[] args) { thread t1=new thread(0); thread1 t2=new thread1(0); Thread tt1=new Thread(t1); Thread tt2=new Thread(t2); caiquan c2=new caiquan(); JFrame frame=new JFrame(); JPanel panel1=new JPanel(); JPanel panel2=new JPanel(); JPanel panel3=new JPanel(); JButton jiawin=new JButton("甲方赢"); JButton yiwin=new JButton("乙方赢"); JButton begin=new JButton("开始"); JButton stop=new JButton("停止"); JLabel scissors,fist,cloth; JLabel j=new JLabel("请玩家选择按钮:"); JLabel jia=new JLabel("甲出:"); JLabel yi=new JLabel("乙出:"); frame.setTitle("猜拳游戏"); frame.setLayout(null); frame.setSize(1200,1200); frame.setVisible(true); panel1.setSize(600,600); panel2.setBounds(0,600,800,800); panel3.setBounds(0,300,800,800); frame.add(panel1); frame.add(panel2); frame.add(panel3); j.setBounds(100,500,50,50); j.setFont(new Font("宋体",Font.BOLD,20)); jia.setFont(new Font("宋体",Font.BOLD,20)); yi.setFont(new Font("宋体",Font.BOLD,20)); panel.add(j); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jiawin.setBounds(100,500,100,100); yiwin.setBounds(200,500,100,100); begin.setBounds(300,500,100,100); stop.setBounds(400,500,100,100); jia.setBounds(100,700,100,100); yi.setBounds(300,700,100,100); panel1.add(yiwin); panel1.add(jiawin); panel1.add(begin); panel1.add(stop); JLabel j1=new JLabel("结果:"); j1.setFont(new Font("宋体",Font.BOLD,20)); panel2.add(j1); JTextField t=new JTextField(30); t.setSize(100,100); t.setEditable(false); panell.add(t); JButton btn1=new JButton(); JButton btn=new JButton(); panel3.add(jia); panel3.add(btn); panel3.add(yi); panel3.add(btn1); jiawin.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { c2.flag1=1; } }); yiwin.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { c2.flag1=2; } }); begin.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { tt1.start(); tt2.start(); } }); stop.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { tt1.stop(); tt2.stop(); if((t1.flag==0&&t2.flag==2&&c2.flag1==1)||(t1.flag==1&&t2.flag==0&&c2.flag1==1)||(t1.flag==2&&t2.flag==1&&c2.flag1==1)) { t.setText("你赢了"); } else if((t1.flag==0&&t2.flag==1&&c2.flag1==2)||(t1.flag==1&&t2.flag==2&&c2.flag1==2)||(t1.flag==2&&t2.flag==0&&c2.flag1==2)) { t.setText("你赢了"); } else if((t1.flag==t2.flag&&c2.flag1==1)||(t1.flag==t2.flag&&c2.flag1==2)) { t.setText("平局"); } else if((t1.flag==0&&t2.flag==2&&c2.flag1==2)||(t1.flag==1&&t2.flag==0&&c2.flag1==2)||(t1.flag==2&&t2.flag==1&&c2.flag1==2)) { t.setText("你输了"); } else if((t1.flag==0&&t2.flag==1&&c2.flag1==1)||(t1.flag==1&&t2.flag==2&&c2.flag1==1)||(t1.flag==2&&t2.flag==0&&c2.flag1==1)) { t.setText("你输了"); } } }); class thread implements Runnable { public int flag; public void run() { try { for(int i=0;;i++) { flag=(int)(Math.random()*3); if(flag==0) {btn.setIcon(new ImageIcon("A:\\zhaiwa\\eclipse\\bu.jpg")); }//甲 else if (flag==1) {btn.setIcon(new ImageIcon("A:\\zhaiwa\\eclipse\\jiandao.jpg")); } else if(flag==2){btn.setIcon(new ImageIcon("A:\\zhaiwa\\eclipse\\shitou.jpg")); } }} catch(Exception e) {e.printStackTrace();} } } class thread1 implements Runnable { public int flag; public void run() { try { for(int i=0;;i++) { flag=(int)(Math.random()*3); if(flag==0) {btn1.setIcon(new ImageIcon("A:\\zhaiwa\\eclipse\\bu.jpg")); } else if (flag==1) {btn1.setIcon(new ImageIcon("A:\\zhaiwa\\eclipse\\jiandao.jpg")); } else if(flag==2){btn1.setIcon(new ImageIcon("A:\\zhaiwa\\eclipse\\shitou.jpg")); } }} catch(Exception e) {e.printStackTrace();} } } }}
解决评论 打赏 举报无用 1
悬赏问题
- ¥15 oracle数据库查询语句问题
- ¥15 有没有c++绘制算法的佬们吗救孩一下
- ¥15 android 蓝牙闪退
- ¥15 绝缘子污秽comsol仿真参数
- ¥15 Fatal error in Process MEMORY
- ¥15 labelme生成的json有乱码?
- ¥30 arduino vector defined in discarded section `.text' of wiring.c.o (symbol from plugin)
- ¥20 如何训练大模型在复杂因素组成的系统中求得最优解
- ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
- ¥45 求17位带符号原码乘法器verilog代码