📄 createred.java
字号:
/*
* 创建日期 2005-4-10
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package frame;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.LinkedList;
import javax.imageio.ImageIO;
import javax.swing.JComponent;
/**
* @author Robert
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class CreateRed extends JComponent{
private int myColor;
private int type;
private LinkedList redPieces = new LinkedList();
private LinkedList imagePieces = new LinkedList();
private Image red;
public CreateRed(){
try
{
red = ImageIO.read(new File("Images/red.jpg"));
}
catch(IOException exception)
{
exception.printStackTrace();
}
}
public void makeRed(){
int redSize = red.getWidth(this);
for(int i = 1; i <=21; i ++){
if(i < 2)
redPieces.add(new CreatePieces(1,i));
else if(i < 3)
redPieces.add(new CreatePieces(2,i));
else if(i < 5)
redPieces.add(new CreatePieces(3,i));
else if(i < 10)
redPieces.add(new CreatePieces(4,i));
else
redPieces.add(new CreatePieces(5,i));
}
for(int k = 0; k < redPieces.size(); k ++){
BufferedImage newPiece = new BufferedImage(
((CreatePieces) redPieces.get(k)).getPSize()* redSize,
((CreatePieces) redPieces.get(k)).getPSize() * redSize,
BufferedImage.TYPE_INT_ARGB);
Graphics2D dp = newPiece.createGraphics();
for(int i = 0; i < ((CreatePieces)redPieces.get(k)).getPSize()* redSize; i += redSize)
for(int j = 0; j < ((CreatePieces)redPieces.get(k)).getPSize()* redSize; j += redSize)
if (((CreatePieces)redPieces.get(k)).getGrid()[i / redSize][j / redSize] == 1){
dp.drawImage(red,j,i,null);
//System.out.println("Image:i=" + dp + ",j=" + j);
}
imagePieces.add(new Pieces(newPiece, k + 1, 3,
((CreatePieces)redPieces.get(k)).getPSize(),
((CreatePieces)redPieces.get(k)).getGrid()));
dp.dispose();
}
}
public LinkedList getImagePieces(){
return imagePieces;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -