chessman.java

来自「<Java编程精选集锦>随书源码」· Java 代码 · 共 56 行

JAVA
56
字号
import java.awt.*;
import java.awt.image.*;
//
//
// chessMan
//
//
public class chessMan
{
	int Diameter;
	Color chC,backC;
	String chS;
	int X,Y,Num,Count;//封装棋子的位置与代码以及序列号,X横坐标,Y纵坐标,Num代码,Count序列号
	Graphics g;
	boolean judge=true;
	ImageObserver ib;
	public chessMan(Graphics gbak,ImageObserver ibBak)
	{
		ib=ibBak;
		g=gbak;
	}
	public void chM(int bakX,int bakY,int dBak,String chSbak,Color chCbak,Color backCbak)
	{//四个参数分别表示棋子圆的直径,字符,前景颜色,背景颜色
		chS=chSbak;
		chC=chCbak;
		backC=backCbak;
		X=bakX;
		Y=bakY;
		Diameter=dBak;
	}
	public void paint()
	{
		if(!judge)return;
		g.setColor (backC);
		g.fillOval (X,Y,Diameter,Diameter);
		g.setXORMode (Color.black);
		g.fillRect (X,Y,Diameter,Diameter);
		if(chC==Color.red )
			g.drawImage(chessArray.imgRed ,X,Y,Diameter,Diameter,ib);
		if(chC==Color.blue )
			g.drawImage(chessArray.imgBlue ,X,Y,Diameter,Diameter,ib);
		g.setPaintMode ();
		g.setColor(Color.yellow);
		g.setFont(new Font("chequer",Font.BOLD,Diameter*2/3));
		g.drawString(chS,X+Diameter/2-Diameter/3,Y+Diameter/2+Diameter/4);
	}
	public void repaint()
	{
		paint();
	}
	public void setVisible(boolean paintOR)
	{
		judge=paintOR;
		paint();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?