当前位置: 首页 > wzjs >正文

网站的制作步骤免费推广的预期效果

网站的制作步骤,免费推广的预期效果,公司介绍ppt模板免费下载,建设推广型网站五子棋项目步骤: 1、创建界面【界面必要因素:界面标题、尺寸、位置、关闭方式】 2、创建面板(控制面板与棋盘面板)【面板可以改变面板背景、面板的固定尺寸使用Dimension】 3、在控制面板上添加按钮【可以改变按钮的颜色&#…

五子棋项目步骤:

1、创建界面【界面必要因素:界面标题、尺寸、位置、关闭方式】

2、创建面板(控制面板与棋盘面板)【面板可以改变面板背景、面板的固定尺寸使用Dimension】

3、在控制面板上添加按钮【可以改变按钮的颜色,以及尺寸(Dimension)】

4、将面板添加到界面上面

5、界面可视化

6、主函数调用界面方法

7、创建监听器类,在界面方法的最前面添加上监听器,棋盘面板加上鼠标监听器,创建棋子类chessFlag是棋子类型

8、监听器类中actionPerformed(ActionEvent e) 实现按钮功能

9、自定义类GoService 用于管理游戏的核心逻辑,先规定棋盘的各项数据【坐标,尺寸,行,列,游戏流程控制变量,定义棋盘二维数组chessArr 在定义一个二维数组chessList储存棋盘的历史记录,chessIndex是chessList的索引】,画棋盘棋子

package lfx250629;import javax.swing.*;
import java.awt.*;import static java.awt.BorderLayout.*;public class GoBangUI {//添加监听器GoBangLinstener goBangLinstener = new GoBangLinstener();public GoBangUI(){//创建一个五子棋界面,添加:界面名字、尺寸、位置、关闭方式JFrame jf = new JFrame();jf.setTitle("五子棋");jf.setSize(1000,1000);jf.setLocationRelativeTo(null);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//添加两块面板,分别是棋盘面板和控制面板JPanel chessPanel = new JPanel();JPanel controlPanel = new JPanel();//设置面板背景chessPanel.setBackground(Color.CYAN);controlPanel.setBackground(Color.white);//设置控制面板的固定尺寸Dimension dimension = new Dimension(120,0);controlPanel.setPreferredSize(dimension);//添加按钮String[] btmStr ={"开始游戏","悔棋","人人对战"};for (int i = 0;i<btmStr.length;i++){JButton jButton = new JButton(btmStr[i]);controlPanel.add(jButton);//将按钮添加到控制面板上jButton.setBackground(Color.GREEN);jButton.setPreferredSize(new Dimension(100,30));//设置按钮的优先尺寸}jf.add(chessPanel, EAST);jf.add(controlPanel, WEST);jf.setVisible(true);//在棋盘面板上添加鼠标监听器chessPanel.addMouseListener(goBangLinstener);}public static void main(String[] args) {new GoBangUI();}
}

注意:如果定义棋盘面板是ChessPanel chessPanel = new ChessPanel();则需要创建一个ChessPanel使其继承JPanel 

package lfx250629;import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;public class GoBangLinstener implements MouseListener, ActionListener {@Overridepublic void actionPerformed(ActionEvent e) {//实现按钮功能String ac = e.getActionCommand();if (ac.equals("开始游戏")){//(JButton)是一个强制转换符 将object转化为JButton//e.getSource();作用:返回触发事件对象,其返回类型为objectJButton jButton = (JButton) e.getSource();jButton.setText("结束对局");jButton.setBackground(Color.RED);} else if (ac.equals("悔棋")) {} else if (ac.equals("人人对战")) {JButton jButton = (JButton) e.getSource();jButton.setText("开始游戏");jButton.setBackground(Color.GREEN);}}@Overridepublic void mouseClicked(MouseEvent e) {int x = e.getX();int y = e.getY();System.out.println("x:"+x+"y:"+y);}@Overridepublic void mousePressed(MouseEvent e) {}@Overridepublic void mouseReleased(MouseEvent e) {}@Overridepublic void mouseEntered(MouseEvent e) {}@Overridepublic void mouseExited(MouseEvent e) {}
}
package lfx250629;import java.awt.*;
import java.awt.image.BufferedImage;public class GoService {//GoService 是一个自定义类,通常用于管理游戏的核心逻辑//规定好棋盘的数据static final int X = 50;static final int Y = 50;static final int SIZE = 50;static final int ROW = 15;//行static final int COL = 15;//列//游戏流程控制变量int chessFlog = 0;//图形渲染Graphics g;//游戏数据static  int[][] chessArr = new int[ROW+1][COL+1];//[ROW+1][COL+1]表示二维数组的长度static Chess[] chessList = new Chess[(ROW+1)*(COL+1)];//chessList储存棋盘中棋子的数据,是棋盘的历史记录final int chessIndex = 0;//chessIndex为chessList的索引//画棋盘public static void drawChessPad(Graphics g){//缓冲绘图BufferedImage bufferedImage = new BufferedImage(880,1000,2);Graphics ig = bufferedImage.getGraphics();//从缓冲绘图上获得画笔//绘制棋盘背景ig.setColor(Color.pink);  //画笔颜色ig.fillRect(X-SIZE/2,Y-SIZE/2,SIZE*(COL+1),SIZE*(ROW+1));//先画棋盘最外面的框框//绘制棋盘的线ig.setColor(Color.BLACK);for (int i = 0;i <= COL;i++){ig.drawLine(X,Y+SIZE*1,X+SIZE*COL,Y+SIZE*i);ig.drawLine(X+SIZE*1,Y,X+SIZE*i,Y+SIZE*ROW);}g.drawImage(bufferedImage,0,0,null);}//自定义开始游戏public  void initGame(){chessFlog = 1;//数据重置chessArr = new int[ROW+1][COL+1];drawChessPad(g);}//画棋子public static void drawAllChess(Graphics g){}}
package lfx250629;public class Chess {int r,c;int chessFlag;public Chess(int r, int c, int chessFlag){this.r = r ;this.c = c ;this.chessFlag = chessFlag;}
}

知识点回顾加补充

1、BorderLayout布局有东西南北中四个部分,面板使用该布局添加到界面上的时候

格式:jf.add(chessPanel , BorderLayout . 方位)

 东EAST            西WEST        南SOUTH           北NORTH          中CENTER

2、动作监听器与鼠标监听器的方法

@Overridepublic void actionPerformed(ActionEvent e) {// 处理按钮点击事件String ac = e.getActionCommand();//获取按钮的文本信息}
public interface MouseListener extends EventListener {void mouseClicked(MouseEvent e);   // 鼠标点击(按下并释放)void mousePressed(MouseEvent e);   // 鼠标按下void mouseReleased(MouseEvent e);  // 鼠标释放void mouseEntered(MouseEvent e);   // 鼠标进入组件区域void mouseExited(MouseEvent e);    // 鼠标离开组件区域
}

3、上面代码中的:

        ①e.getSource();返回触发事件对象,其返回类型为object

        ②(JButton)强制转换符 将object类型转换为JButton【①②  适用于多个按钮共同使用一个监听器,用于区别出发了什么事件】

         ③BufferedImage:图像缓冲区,本质是一个存储像素数据的内存区域

        构造方法:BufferedImage(int width,int height,int ImageType[图像类型])

        常用方法:int getWidth/int get height()获得图像宽度,高度

                          int getRGB(int x, int y)获得指定坐标像素颜色

        ④chessIndex:计数器,记录当前棋盘上棋子的数目

        ⑤Graphics常用方法

 单词:

default 默认,违约,缺席

close 关闭,停止,完成

operation 运作,实施,行动

preferredsize 优先位置

dimension 大小,维度,范围

border 边界,包边,花带,国境

http://www.dtcms.com/wzjs/256125.html

相关文章:

  • 淮安网站seo汕头seo计费管理
  • 桂林北站是哪个区杭州优化关键词
  • 武汉做网站的培训机构网站制作公司怎么样
  • 2017主流网站开发语言银川网页设计公司
  • 永州网站建设公司推荐国外网站排名前十
  • 成都公园城市建设局网站优质外链
  • 什么网站可以申请做汉语老师推广优化网站排名教程
  • 网站建设的服务怎么样seo研究中心论坛
  • 徐州网站建设案例百度公司官方网站
  • 黑龙江省建设监理协会网站个人博客网页设计html
  • 微网站建设包括哪些内容今日资讯最新消息
  • 联通 网站备案长春seo招聘
  • 苏州创元投资集团网站关键一招
  • 网站设计兼职爱站网为什么不能用了
  • 做一钓鱼网站吗seo外包如何
  • 企业网站方案设计网站推广的途径有哪些
  • 韶关企业网站建设公司短视频培训要多少学费
  • 会员制网站建设百度引擎搜索推广
  • 网站建设北京女儿考试没圈关键词
  • cms模板seo网络推广优化教程
  • 网站建设168抖音seo关键词优化怎么做
  • 企业做网站etp和源程序交换链接平台
  • 免费模板网站制作全网营销有哪些平台
  • 电商网站怎么做seo优化网页设计费用报价
  • 龙岩网站建设大概费用seo网站
  • 专业网站建设模板下载seo网络优化教程
  • 天津网站建设公司百度提问
  • 有每天做任务赚钱的网站吗网站关键词快速优化
  • 网页搜索关键词网站seo推广
  • 建设网站怎么到工商备案推广普通话手抄报句子