📄 6002e3f7a561001c1353ca932f09e5b1
字号:
if(isEmptyC)
erase(i,j);
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
}
public void bottomRightCornerErase2(int i, int j)
{
int k=0;
int n=0;
boolean isEmptyR = true;
boolean isEmptyC = true;
if(j==FrameUI.column+1 && FrameUI.row == i+1)
erase(i,j);
else if(j==FrameUI.column+1 && FrameUI.row>i+1)
{
oneWayNext(i,j,"bottomRightColumn2");
}
else if(FrameUI.row==i+1 && j>FrameUI.column+1)
{
oneWayNext(i, j, "bottomRightRow2");
}
else
{
for(k=FrameUI.column+1; k<j; k++)
{
if(FrameUI.imageBtn[FrameUI.row][k].getIcon() != null)
{
isEmptyR = false;
break;
}
}
if(isEmptyR)
{
for(n=i+1; n<FrameUI.row; n++)
{
if(FrameUI.imageBtn[n][j].getIcon() != null)
{
isEmptyC = false;
break;
}
}
if(isEmptyC)
erase(i,j);
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
}
public void topLeftCornerErase2(int i, int j)
{
int k=0;
int n=0;
boolean isEmptyC = true;
boolean isEmptyR = true;
if(j==FrameUI.column+1 && FrameUI.row == i+1)
erase(i,j);
else if(j==FrameUI.column+1 && FrameUI.row>i+1)
{
oneWayNext(i,j,"topLeftColumn2");
}
else if(FrameUI.row==i+1 && j>FrameUI.column+1)
{
oneWayNext(i, j, "topLeftRow2");
}
else
{
for(k=FrameUI.column+1; k<j; k++)
{
if(FrameUI.imageBtn[i][k].getIcon() != null)
{
isEmptyR = false;
break;
}
}
if(isEmptyR)
{
for(n=i+1; n<FrameUI.row; n++)
{
if(FrameUI.imageBtn[n][FrameUI.column].getIcon() != null)
{
isEmptyC = false;
break;
}
}
if(isEmptyC)
erase(i,j);
else
bottomRightCornerErase2(i,j);
}
else
bottomRightCornerErase2(i,j);
}
}
public void topRightCornerErase3(int i, int j)
{
int k=0;
int n=0;
boolean isEmptyR = true;
boolean isEmptyC = true;
if(FrameUI.column == j+1 && FrameUI.row == i+1)
erase(i,j);
else if(FrameUI.column==j+1 && FrameUI.row>i+1)
{
oneWayNext(i,j,"topRightColumn3");
}
else if(FrameUI.row==i+1 && FrameUI.column>j+1)
{
oneWayNext(i, j, "topRightRow3");
}
else
{
for(k=j+1;k<FrameUI.column;k++)
{
if(FrameUI.imageBtn[i][k].getIcon() != null)
{
isEmptyR = false;
break;
}
}
if(isEmptyR)
{
for(n=i+1; n<FrameUI.row; n++)
{
if(FrameUI.imageBtn[n][FrameUI.column].getIcon() != null)
{
isEmptyC = false;
break;
}
}
if(isEmptyC)
erase(i,j);
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
}
public void bottomLeftCornerErase3(int i, int j)
{
int k=0;
int n=0;
boolean isEmptyC = true;
boolean isEmptyR = true;
if(FrameUI.row == i+1 && FrameUI.column==j+1)
erase(i,j);
else if(FrameUI.row==i+1 && FrameUI.column>j+1)
{
oneWayNext(i,j,"bottomLeftRow3");
}
else if(FrameUI.column == j+1 && FrameUI.row>i+1)
{
oneWayNext(i,j,"bottomLeftColumn3");
}
else
{
for(k=i+1; k<FrameUI.row; k++)
{
if(FrameUI.imageBtn[k][j].getIcon()!=null)
{
isEmptyC = false;
break;
}
}
if(isEmptyC)
{
for(n=j+1; n<FrameUI.column; n++)
{
if(FrameUI.imageBtn[FrameUI.row][n].getIcon() != null)
{
isEmptyR = false;
break;
}
}
if(isEmptyR)
erase(i,j);
else
topRightCornerErase3(i,j);
}
else
topRightCornerErase3(i,j);
}
}
public void bottomRightCornerErase4(int i, int j)
{
int k=0;
int n=0;
boolean isEmptyR = true;
boolean isEmptyC = true;
if(FrameUI.column == j+1 && i == FrameUI.row+1)
erase(i,j);
else if(FrameUI.column == j+1 && i>FrameUI.row+1)
{
oneWayNext(i,j,"bottomRightColumn4");
}
else if(i==FrameUI.row+1 && FrameUI.column>j+1)
{
oneWayNext(i, j, "bottomRightRow4");
}
else
{
for(k=j+1; k<FrameUI.column; k++)
{
if(FrameUI.imageBtn[i][k].getIcon() != null)
{
isEmptyR = false;
break;
}
}
if(isEmptyR)
{
for(n=FrameUI.row+1; n<i; n++)
{
if(FrameUI.imageBtn[n][FrameUI.column].getIcon() != null)
{
isEmptyC = false;
break;
}
}
if(isEmptyC)
erase(i,j);
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
else
{
JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
}
public void topLeftCornerErase4(int i, int j)
{
int k=0;
int n=0;
boolean isEmptyC = true;
boolean isEmptyR = true;
if(FrameUI.column==j+1 && i==FrameUI.row+1)
erase(i,j);
else if(FrameUI.column == j+1 && i>FrameUI.row+1)
{
oneWayNext(i,j,"topLeftColumn4");
}
else if(i==FrameUI.row+1 && FrameUI.column>j+1)
{
oneWayNext(i, j, "topLeftRow4");
}
else
{
for(k=j+1; k<FrameUI.column; k++)
{
if(FrameUI.imageBtn[FrameUI.row][k].getIcon() != null)
{
isEmptyR = false;
break;
}
}
if(isEmptyR)
{
for(n=FrameUI.row+1; n<i; n++)
{
if(FrameUI.imageBtn[n][j].getIcon() != null)
{
isEmptyC = false;
break;
}
}
if(isEmptyC)
erase(i,j);
else
bottomRightCornerErase4(i,j);
}
else
bottomRightCornerErase4(i,j);
}
}
public void sameRowTwoCorner(int i, int j, String s)
{
int k = 0;
int n = 0;
boolean isEmpty = true;
boolean isEmptyC1 = true;
boolean isEmptyC2 = true;
for(k=0; k<10; k++)
{
if(FrameUI.imageBtn[k][FrameUI.column].getIcon()==null && FrameUI.imageBtn[k][j].getIcon()==null)
{
if(s.equals("column<j"))
{
for(n=FrameUI.column+1; n<j; n++)
{
if(FrameUI.imageBtn[k][n].getIcon() != null)
{
isEmpty = false;
break;
}
}
if(isEmpty && k>FrameUI.row+1)
{
for(int m=FrameUI.row+1; m<k;m++)
{
if(FrameUI.imageBtn[m][FrameUI.column].getIcon() != null)
{
isEmptyC1 = false;
break;
}
}
if(isEmptyC1)
{
for(int l=i+1; l<k; l++)
{
if(FrameUI.imageBtn[l][j].getIcon() != null)
{
isEmptyC2 = false;
break;
}
}
if(isEmptyC2)
{
erase(i,j);
break;
}
}
}
else if(isEmpty && (k==FrameUI.row+1 || k==FrameUI.row-1))
{
erase(i,j);
break;
}
else if(isEmpty && k<FrameUI.row-1)
{
for(int m=k+1; m<FrameUI.row; m++)
{
if(FrameUI.imageBtn[m][FrameUI.column].getIcon() != null)
{
isEmptyC1 = false;
break;
}
}
if(isEmptyC1)
{
for(int l=k+1; l<i; l++)
{
if(FrameUI.imageBtn[l][j].getIcon() != null)
{
isEmptyC2 = false;
break;
}
}
if(isEmptyC2)
{
erase(i,j);
break;
}
}
}
}
else if(s.equals("column>j"))
{
for(n=j+1;n<FrameUI.column;n++)
{
if(FrameUI.imageBtn[k][n].getIcon() != null)
{
isEmpty = false;
break;
}
}
if(isEmpty && k>FrameUI.row+1)
{
for(int m=FrameUI.row+1; m<k; m++)
{
if(FrameUI.imageBtn[m][j].getIcon() != null)
{
isEmptyC1 = false;
break;
}
}
if(isEmptyC1)
{
for(int l=FrameUI.row+1; l<k; l++)
{
if(FrameUI.imageBtn[l][FrameUI.column].getIcon() != null)
{
isEmptyC2 = false;
break;
}
}
if(isEmptyC2)
{
erase(i,j);
break;
}
}
}
else if(isEmpty && (k==FrameUI.row+1 || k==FrameUI.row-1))
{
erase(i,j);
break;
}
else if(isEmpty && k<FrameUI.row-1)
{
for(int m=k+1;m<i; m++)
{
if(FrameUI.imageBtn[m][j].getIcon() != null)
{
isEmptyC1 = false;
break;
}
}
if(isEmptyC1)
{
for(int l=k+1; l<FrameUI.row; l++)
{
if(FrameUI.imageBtn[l][FrameUI.column].getIcon() != null)
{
isEmptyC2 = false;
break;
}
}
if(isEmptyC2)
{
erase(i,j);
break;
}
}
}
}
}
isEmpty = true;
isEmptyC1 = true;
isEmptyC2 = true;
}
if(k==10)
{
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
public void sameColumnTwoCorner(int i,int j, String s)
{
int k = 0;
int n = 0;
boolean isEmpty = true;
for(k=0; k<17; k++)
{
if(FrameUI.imageBtn[FrameUI.row][k].getIcon()==null && FrameUI.imageBtn[i][k].getIcon()==null)
{
if(s.equals("row<i"))
{
for(n=FrameUI.row+1; n<i; n++)
{
if(FrameUI.imageBtn[n][k].getIcon() != null)
{
isEmpty = false;
break;
}
}
}
else if(s.equals("row>i"))
{
for(n=i+1;n<FrameUI.row;n++)
{
if(FrameUI.imageBtn[n][k].getIcon() != null)
{
isEmpty = false;
break;
}
}
}
if(isEmpty)
{
erase(i,j);
break;
}
}
isEmpty = true;
}
if(k==17)
{
FrameUI.changeBtn = FrameUI.imageBtn[i][j];
FrameUI.row = i;
FrameUI.column = j;
FrameUI.statusLabel.setText("当前点坐标为:("+FrameUI.row+","+FrameUI.column+"), 位移为"+String.valueOf(FrameUI.row*17+FrameUI.column));
}
}
public void erase(int i, int j)
{
FrameUI.imageBtn[i][j].setIcon(null);
FrameUI.imageBtn[i][j].setBackground(new Color(0x374d76));
FrameUI.imageBtn[i][j].setEnabled(false);
FrameUI.imageBtn[i][j].setBorderPainted(false);
FrameUI.imageBtn[FrameUI.row][FrameUI.column].setIcon(null);
FrameUI.imageBtn[FrameUI.row][FrameUI.column].setBackground(new Color(0x374d76));
FrameUI.imageBtn[FrameUI.row][FrameUI.column].setEnabled(false);
FrameUI.imageBtn[FrameUI.row][FrameUI.column].setBorderPainted(false);
FrameUI.changeBtn = null;
FrameUI.row = 0;
FrameUI.column = 0;
EventHandler.playMusic("erase.wav");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -