ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java-Work11-图形界面设计1(2)

2022-01-28 22:33:38  阅读:155  来源: 互联网

标签:Work11 Java textArea 图形界面 lose score import new append


package work11;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

@SuppressWarnings("serial")
public class Work11_2 extends JFrame implements ActionListener
{
int win, lose, score, draw;
JLabel label;
JTextArea textArea;
JButton scissors, stone, cloth, clear;
JPanel panel1, panel2;
JScrollPane jsp;

public Work11_2()
{
	setTitle("Small Game");
	setLocation(250, 250);
	setSize(350, 350);
	
	win = lose = score = draw = 0;
	
	panel1 = new JPanel();
	label = new 
			JLabel("赢: "+Integer.toString(win)+
			"  平: "+Integer.toString(draw)+
			"  输: "+Integer.toString(lose)+
			"  得分: "+Integer.toString(score));
	panel1.add(label);
	
	
	textArea = new JTextArea();
	textArea.setEditable(false);

// textArea.setLineWrap(true);
textArea.setBackground(Color.orange);
textArea.setFont(new Font("隶书", Font.BOLD, 21));
textArea.setForeground(Color.BLACK);
textArea.append("第"+Integer.toString(win+lose+draw+1)+"回合\n");
jsp = new JScrollPane(textArea);

	panel2 = new JPanel();
	scissors = new JButton("剪刀");
	stone = new JButton("石头");
	cloth = new JButton("布");
	clear = new JButton("清楚分数");
	scissors.addActionListener(this);
	stone.addActionListener(this);
	cloth.addActionListener(this);
	clear.addActionListener(this);
	panel2.add(scissors);
	panel2.add(stone);
	panel2.add(cloth);
	panel2.add(clear);
	
	add(panel1, BorderLayout.NORTH);
	add(jsp, BorderLayout.CENTER);
	add(panel2, BorderLayout.SOUTH);
}

@Override
public void actionPerformed(ActionEvent e)
{
	if(e.getSource() == scissors)
	{
		textArea.append("你出: 剪刀\n");
		int i = (int)(Math.random()*10%3);
		switch(i)
		{
			case 0:
				textArea.append("电脑出: 剪刀\n");
				textArea.append("结果: 平\n");
				draw += 1;
				break;
			case 1:
				textArea.append("电脑出: 石头\n");
				textArea.append("结果: 输\n");
				lose += 1;
				score -= 1;
				break;
			case 2:
				textArea.append("电脑出: 布\n");
				textArea.append("结果: 赢\n");
				win += 1;
				score += 2;
				break;
		}
	}
	else if(e.getSource() == stone)
	{
		textArea.append("你出: 石头\n");
		int i = (int)(Math.random()*10%3);
		switch(i)
		{
			case 0:
				textArea.append("电脑出: 剪刀\n");
				textArea.append("结果: 赢\n");
				win += 1;
				score += 2;
				break;
			case 1:
				textArea.append("电脑出: 石头\n");
				textArea.append("结果: 平\n");
				draw += 1;
				break;
			case 2:
				textArea.append("电脑出: 布\n");
				textArea.append("结果: 输\n");
				lose += 1;
				score -= 1;
				break;
		}
	}
	else if(e.getSource() == cloth)
	{
		textArea.append("你出: 布\n");
		int i = (int)(Math.random()*10%3);
		switch(i)
		{
			case 0:
				textArea.append("电脑出: 剪刀\n");
				textArea.append("结果: 输\n");
				lose += 1;
				score -= 1;
				break;
			case 1:
				textArea.append("电脑出: 石头\n");
				textArea.append("结果: 赢\n");
				win += 1;
				score += 2;
				break;
			case 2:
				textArea.append("电脑出: 布\n");
				textArea.append("结果: 平\n");
				draw += 1;
				break;
		}
	}
	else if(e.getSource() == clear)
	{
		win = 0;
		lose = 0;
		draw = 0;
		score = 0;
		textArea.setText("");
	}
	textArea.append("第"+Integer.toString(win+lose+draw+1)+"回合\n");
	label.setText("赢: "+Integer.toString(win)+
				"  平: "+Integer.toString(draw)+
				"  输: "+Integer.toString(lose)+
				"  得分: "+Integer.toString(score));
}

public static void main(String[] args)
{
	Work11_2 frame = new Work11_2();
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setVisible(true);
}

}

标签:Work11,Java,textArea,图形界面,lose,score,import,new,append
来源: https://www.cnblogs.com/Conan-jine/p/15853995.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有