java绘制五子棋棋盘

 更新时间:2021年01月25日 14:19:13   作者:老阔丶啊~疼  
这篇文章主要为大家详细介绍了java绘制五子棋棋盘,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java绘制五子棋棋盘的具体代码,供大家参考,具体内容如下

源码:

import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class Demo extends JFrame {

 //背景图片
 BufferedImage image;

 {
 try {
  image = ImageIO.read(new File("forGame\\src\\resource\\主题背景.jpg"));
 } catch (IOException e) {
  e.printStackTrace();
 }
 }

 //创建画板内部类
 class myJPanel extends JPanel{
 //绘制方法
 @Override
 public void paint(Graphics g) {
  //强制类型转换得到Graphics子类Graphics2D对象
  Graphics2D g2 = (Graphics2D)g;//又得到一支笔
  //先JPanel绘制背景图片
  g2.drawImage(image,0,0,1600,900,null);
  //设置画笔颜色
  g2.setColor(Color.CYAN);
  //填充规定区域
  g2.fill3DRect(50, 50, 700, 700, true);

  //再设置画笔颜色,画直线
  g2.setColor(Color.black);
  //设置画出直线的宽度
  g2.setStroke(new BasicStroke(3));

  //绘制下棋区域
  for(int i = 1;i < 16;i ++) {
  g2.drawLine(50,50*i,750,50*i );
  }
  for(int i = 1;i < 16;i ++) {
  g2.drawLine(50*i,50,50*i,750 );
  }

  //画外框
  //设置画笔宽度
  g2.setStroke(new BasicStroke(5));
  g2.drawLine(25,25,775, 25);
  g2.drawLine(25,775,775, 775);
  g2.drawLine(25,25,25, 775);
  g2.drawLine(775,25,775, 775);

  //画四个黑色圆
  g2.fillOval(240, 240, 20, 20);
  g2.fillOval(540, 240, 20, 20);
  g2.fillOval(240, 540, 20, 20);
  g2.fillOval(540, 540, 20, 20);

  //填充框框与下棋区域之间的区域
  g2.setColor(new Color(176, 166, 100, 254));//设置画笔颜色
  g2.fillRect(26, 26, 749, 23);
  g2.fillRect(26, 49, 23, 725);
  g2.fillRect(49, 752, 725, 23);
  g2.fillRect(752, 49, 23, 703);
 }
 }


 //组装窗体
 public void init(){
 //创建画布
 myJPanel canvas =new myJPanel();
 //添加画板
 add(canvas);
 //改变图标
 setIconImage(new ImageIcon("forGame\\src\\resource\\白棋.png").getImage());
 //窗体不可变
 setResizable(false);
 //窗体可关闭
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 //设置窗体大小
 setBounds(0,0,1600,900);
 //窗体显示
 setVisible(true);
 }


 public static void main(String[] args) {
 new Demo().init();
 }
}

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot中自定义参数绑定步骤详解

    SpringBoot中自定义参数绑定步骤详解

    这篇文章主要介绍了SpringBoot中自定义参数绑定步骤详解,非常不错,具有参考借鉴价值 ,需要的朋友可以参考下
    2018-02-02
  • Java 数据交换 Json 和 异步请求 Ajax详解

    Java 数据交换 Json 和 异步请求 Ajax详解

    Json(JavaScript Object Notation)是一种轻量级的数据交换格式,采用键值对的形式来表示数据,它广泛应用于Web开发中,特别适合于前后端数据传输和存储,这篇文章主要介绍了Java数据交换Json和异步请求Ajax,需要的朋友可以参考下
    2023-09-09
  • Mybatis-plus:${ew.sqlselect}用法说明

    Mybatis-plus:${ew.sqlselect}用法说明

    这篇文章主要介绍了Mybatis-plus:${ew.sqlselect}用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • springboot中的dockerfile使用

    springboot中的dockerfile使用

    这篇文章主要介绍了springboot中的dockerfile使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • spring boot实现图片上传和下载功能

    spring boot实现图片上传和下载功能

    这篇文章主要为大家详细介绍了spring boot实现图片上传和下载功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • Java Runtime的使用详解

    Java Runtime的使用详解

    这篇文章主要介绍了Java Runtime的使用详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • java基于正则提取字符串中的数字功能【如提取短信中的验证码】

    java基于正则提取字符串中的数字功能【如提取短信中的验证码】

    这篇文章主要介绍了java基于正则提取字符串中的数字功能,可用于提取短信中的验证码,涉及java基于正则的字符串匹配相关操作技巧,需要的朋友可以参考下
    2017-01-01
  • maven下载依赖失败问题及解决

    maven下载依赖失败问题及解决

    这篇文章主要介绍了maven下载依赖失败问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • jvm添加自定义dns实现过程示例

    jvm添加自定义dns实现过程示例

    这篇文章主要为大家介绍了jvm添加自定义dns实现过程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • 百度Java面试题 前200页精选(下)

    百度Java面试题 前200页精选(下)

    这篇文章主要为大家分享了Java面试资源下篇,百度“Java面试题”前200页都在这里了,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12

最新评论