真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

中國象棋棋子java代碼 java象棋棋盤類怎么寫

求要中國象棋將,帥的走法的JAVA代碼

int[][] loaction=new int[10][9];

成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、成都做網(wǎng)站、中陽網(wǎng)絡(luò)推廣、小程序開發(fā)、中陽網(wǎng)絡(luò)營銷、中陽企業(yè)策劃、中陽品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供中陽建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com

左帥:loaction[0][4];

X X X

X X

X X X

-----

[0][3] [1][3] [2][3]

[0][4] [1][4] [2][4]

[0][5] [1][5] [2][5]

即:x=0 x=2 y=3 y=5

------------------------------

右將:loaction[9][4];

X X X

X X

X X X

-----

[7][3] [8][3] [9][3]

[7][4] [8][4] [9][4]

[7][5] [8][5] [9][5]

---------------------------

public int go(int x,int y,int path,int len){

if(loaction[x][y]==1) {//是帥

if(path==1){//向左

if(x=0) return -1;//返回-1代表走發(fā)錯誤

else {loaction[x-1][y]=1;loaction[x][y]=-1;}//將左一個格子標(biāo)記為帥

}

else if(path==2){//向上

...

}

else if(path==3){//向右

...

}

else if(path==4){//向下

...

}//else path

}//if key

else if(loaction[x][x]==2){//2代表將

....

}//if key

}

車就差不多了

如何用java swing 實現(xiàn)中國象棋的棋盤。棋盤就好。。。

package com.fzhw.app;

import java.awt.BorderLayout;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.HeadlessException;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Xiangqi extends JFrame{

private static final long serialVersionUID = 1;

public Xiangqi() throws HeadlessException {

super();

setTitle("my board");

this.getContentPane().setLayout(new BorderLayout());

this.getContentPane().add(new Board(), BorderLayout.CENTER);

this.setSize(960, 960);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String args[]){

new Xiangqi().setVisible(true);

}

}

class Board extends JPanel{

private static final long serialVersionUID = 1L;

protected void paintComponent(Graphics g) {

super.paintComponent(g);

Graphics2D g2d=(Graphics2D)g;

int width=this.getWidth();

int height=this.getHeight();

int hGap=height/9;

int wGap=width/8;

for(int i=0;i10;i++){

g2d.drawLine(0, i*hGap, width, i*hGap);

}

for(int i=0;i9;i++){

g2d.drawLine(i*wGap, 0, i*wGap, 4*hGap);

g2d.drawLine(i*wGap, 5*hGap, i*wGap, height);

}

g2d.drawString("楚河 ? ? ? ? 漢界", width/2, height/2);

g2d.drawLine(3*wGap, 0, 5*wGap, 2*hGap);

g2d.drawLine(5*wGap, 0, 3*wGap, 2*hGap);

g2d.drawLine(3*wGap, height, 5*wGap, height-2*hGap);

g2d.drawLine(3*wGap, height-2*hGap, 5*wGap, height);

g2d.dispose();

}

}

兩種選擇,第一,你用一個背景圖片來充當(dāng)欺騙,落子位置的在panel上轉(zhuǎn)化,楚河漢界不用管,兩邊是對稱的。

第二種,用Graphics2D自己draw?line。

我給你寫好了,但是10分太少,不想給啊

你好,請問你有具體的將棋子圖片放到棋盤上的Java代碼嗎?或者是你自己編寫的Java國際象棋程序?很急?。?!

有,但是我不能直接給你。我可以告訴你步驟。

首先是加載圖片文件為 Image:比如你有個類叫 ResourceLoader 那么就添加下面的類成員:

public static final URL url = ResourceLoader.class.getResource("/xxx/.../文件名.png");

public static final Image img = Toolkit.getDefaultToolkit().createImage(url);

然后就加載好了。下一步是繼承一個 JPanel(例如),添加鼠標(biāo)/鍵盤事件,并重寫 paint 方法(或 paintComponent 方法)。例如——

public class ChessPanel extends JPanel {

private Point[] chessPoints = new Point[共多少個棋子];

private boolean[] shown = new boolean[共多少個棋子];

@Override public void paintComponent (Graphics g) {

super.paintComponent(g);

for (int i=0; i共多少個棋子; i++) {

if (shown[i]) {

g.drawImage(ResourceLoader.img, chessPoints[i].x, chessPoints[i].y, 棋子寬度, 棋子高度);

}

}

}

class MouseControler extends MouseAdapter {

@Override public void mousePressed (MouseEvent me) {

//自己寫吧

repaint();

}

}

}

最后說明一下,圖片資源文件可以打包到 jar 里。我把關(guān)鍵的部分都已經(jīng)告訴你了。具體邏輯實現(xiàn)你自己寫吧。當(dāng)然數(shù)據(jù)結(jié)構(gòu)你也可以自己寫,我的例子只是告訴你相應(yīng)的在 paint 或者 paintComponent 方法里全部畫出來就行了。

希望能采納。


文章名稱:中國象棋棋子java代碼 java象棋棋盤類怎么寫
文章分享:http://weahome.cn/article/dopdjsg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部