62,615
社区成员
发帖
与我相关
我的任务
分享
private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {
if(imagePanel12.getSonPanelNumbers() == 16) {
return;
}
imagePanel12.removePanels();
int[][] tempSequence = new int[][]{{0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 11}, {12, 13, 14, 15}};
imagePanel12.setSequence(tempSequence);
imagePanel12.setSonPanelNumbers(16);
ImagePanel3[][] tempPanels = new ImagePanel3[4][4];
for(int i = 0; i < 4; i++) {
for(int j = 0; j < 4; j++) {
tempPanels[i][j] = new ImagePanel3(imagePanel12);
}// Of for
}// Of for
imagePanel12.setPanels(tempPanels);
((GridLayout) imagePanel12.getLayout()).setRows(4);
((GridLayout) imagePanel12.getLayout()).setColumns(4);
imagePanel12.setSonImage(imagePanel12.getCurrentImage());
imagePanel12.addPanels(tempPanels);
imagePanel12.sonPanelAddImage(imagePanel12.getImages());// 这个方法里面有针对16个子Panel的重绘代码
}
public void sonPanelAddImage(BufferedImage[][] paraImages) {
for(int i = 0; i < paraImages.length; i++) {
for(int j = 0; j < paraImages[i].length; j++) {
panels[i][j].setImage(images[i][j]);//这个方法里面有repaint
panels[i][j].setCurrentRow(i);
panels[i][j].setCurrentColumn(j);
panels[i][j].setImageRow(i);
panels[i][j].setImageColumn(j);
}
}
}