java五子棋棋盘_java五子棋项目(一)

一、实现功能(人人对战模式)

1、点击开始下棋,黑棋先手,再下白棋

2、拖动界面,棋子和棋盘依旧存在(实现重绘)

2、每下一颗棋子判断输赢,获胜方弹出游戏提示

3、点击悔棋按钮,实现悔棋

4、点击认输按钮,无法下棋,保留下棋结果

二、需要的API类(类、接口)

JFrame BorderLayout JPanel FlowLayout JButton Dimension JComboBox MouseListener|MouseAdapter MouseEvent ActionListener ActionEvent Graphics|Graphics2D Color String 数组

三、设计思路:

1、界面实现

图形界面开发+重绘+继承+接口

2、功能实现

事件监听机制+画图

四、上代码实现思路

1、界面实现(需要重绘棋盘和棋子)

package java2018_7_17五子棋;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.RenderingHints;

import javax.swing.JButton;

import javax.swing.JComboBox;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

@SuppressWarnings("serial")

//继承Jpanel 实现自定义的Config接口public class ChessUI extends JPanel implements Config{

public static void main(String[] args) {

ChessUI chessUI=new ChessUI();

chessUI.showUI();

}

public void showUI() {

String []itemArray= {"人人对战","人机对战"};

JComboBox item=new JComboBox(itemArray);//实例化下拉框对象,并赋初值ChessListener ll=new ChessListener(this,item);//实例化事件处理类对象,并将面板和下拉框传递过去JFrame frame=new JFrame();//创建窗体顶级容器对象frame.setTitle("五子棋");

frame.setSize(new Dimension(900, 800));

frame.setLocationRelativeTo(null);//设置窗体位置时必须先确定窗体大小,顺序不能变this.setBackground(Color.CYAN);

this.setPreferredSize(new Dimension(700, 800));//设置中央面板大小this.addMouseListener(ll);//给面板加上鼠标监听方法frame.add(this,BorderLayout.CENTER);//添加中间面板JPanel eastpanel=new JPanel();//实例化东边面板eastpanel.setBackground(Color.LIGHT_GRAY);

eastpanel.setPreferredSize(new Dimension(100, 800));//设置东边面板大小frame.add(eastpanel,BorderLayout.EAST);//添加东边面板JLabel label=new JLabel();//实例化标签组件对象label.setPreferredSize(new Dimension(100, 120));//设置标签,注意标签是透明的,这样可以让按钮都移到中间eastpanel.add(label);//在东边面板加上labelString [] typeArray&#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值