📄 ibox.java
字号:
class SBox extends Structrue{
/*
* a a
* a a
*
*
* */
public SBox(ActionBtn conbtn){
super(conbtn);
btn[1].setLocation(15*9,0);
btn[0].setLocation(btn[1].getX()-15,btn[1].getY());
btn[2].setLocation(btn[1].getX()-15,btn[1].getY()+15);
btn[3].setLocation(btn[1].getX(),btn[1].getY()+15);
}
public void configDown(){
this.downfactor=new DownFactor(){
public boolean canMoveDown(){
int row=btn[1].getY()/15,
col=btn[1].getX()/15;
if(row==38)return false;
if(row<38&&col>0)
if(conbtn.getFlag(row+2,col-1))return false;
if(row<38)
if(conbtn.getFlag(row+2,col))return false;
return true;
}
};
}
public void configLeft(){
this.leftfactor=new LeftFactor(){
public boolean canMoveLeft(){
int row=btn[1].getY()/15,
col=btn[1].getX()/15;
if(col==1)return false;
if(col>1)
if(conbtn.getFlag(row,col-2))return false;
if(row<39&&col>1)
if(conbtn.getFlag(row+1,col-2))return false;
return true;
}
};
}
public void configRight(){
this.rightfactor=new RightFactor(){
public boolean canMoveRight(){
int row=btn[1].getY()/15,
col=btn[1].getX()/15;
if(col==19)return false;
if(col<39)
if(conbtn.getFlag(row,col+1))return false;
if(row<39&&col<19)
if(conbtn.getFlag(row+1,col+1))return false;
return true;
}
};
}
public void configReshape(){//reshape SBox seems make no sense...
this.reshapefactor=new ReshapeFactor(){
public boolean canReshape(){
return false;
}
};
}
public void reshape(){
}
}
/*class LBox extends Structrue{
/* a a a a
* a a a a a a a a
* a a a a
*
* * *
*
* */
/* public static final int LBOX_L=0;
public static final int LBOX_D=1;
public static final int LBOX_R=2;
public static final int LBOX_U=3;
public LBox(ActionBtn conbtn){
super(conbtn);
this.setShape(new Random().nextInt(4));
switch(this.getShape()){
case LBOX_R:
btn[1].setLocation(15*9,15*2);
break;
case LBOX_U:
btn[1].setLocation(15*9,15);
break;
case LBOX_L:
case LBOX_D:
btn[1].setLocation(15*8,0);
break;
}
this.reshape();
}
public void configDown(){
this.downfactor=new DownFactor(){
public boolean canMoveDown(){
switch(getShape()){
case LBOX_L://u
break;
case LBOX_R://D
break;
case LBOX_U://R
break;
case LBOX_D://L
break;
}
return true;
}
};
}
public void configLeft(){
this.leftfactor=new LeftFactor(){
public boolean canMoveLeft(){
switch(getShape()){
case LBOX_L://u
break;
case LBOX_R://D
break;
case LBOX_U://R
break;
case LBOX_D://L
break;
}
return true;
}
};
}
public void configRight(){
this.rightfactor=new RightFactor(){
public boolean canMoveRight(){
switch(getShape()){
case LBOX_L://u
break;
case LBOX_R://D
break;
case LBOX_U://R
break;
case LBOX_D://L
break;
}
return true;
}
};
}
public void configReshape(){
this.reshapefactor=new ReshapeFactor(){
public boolean canReshape(){
switch(getShape()){
case LBOX_L://u
break;
case LBOX_R://D
break;
case LBOX_U://R
break;
case LBOX_D://L
break;
}
return true;
}
};
}
public void reshape(){
if(reshapefactor.canReshape()){
switch(this.getShape()){
case LBOX_L://u..
btn[0].setLocation(btn[1].getX(),btn[1].getY()-15);
btn[2].setLocation(btn[1].getX()+15,btn[1].getY());
btn[3].setLocation(btn[2].getX()+15,btn[1].getY());
this.setShape(LBOX_U);
break;
case LBOX_R://D
btn[0].setLocation(btn[1].getX(),btn[1].getY()+15);
btn[2].setLocation(btn[1].getX()-15,btn[1].getY());
btn[3].setLocation(btn[2].getX()-15,btn[2].getY());
this.setShape(LBOX_D);
break;
case LBOX_U://R
btn[0].setLocation(btn[1].getX()-15,btn[1].getY());
btn[2].setLocation(btn[1].getX(),btn[1].getY()-15);
btn[3].setLocation(btn[1].getX(),btn[2].getY()-15);
this.setShape(LBOX_R);
break;
case LBOX_D://L..
btn[0].setLocation(btn[1].getX()+15,btn[1].getY());
btn[2].setLocation(btn[1].getX(),btn[1].getY()+15);
btn[3].setLocation(btn[2].getX(),btn[2].getY()+15);
this.setShape(LBOX_L);
break;
}
}
}
}
/*class LBox extends Structrue{
public LBox(ActionBtn conbtn,MainFrame mainframe){
super(conbtn,mainframe);
}
public void configDown(){
this.downfactor=new DownFactor(){
public boolean canMoveDown(){
return true;
}
};
}
public void configLeft(){
this.leftfactor=new LeftFactor(){
public boolean canMoveLeft(){
return true;
}
};
}
public void configRight(){
this.rightfactor=new RightFactor(){
public boolean canMoveRight(){
return true;
}
};
}
public void configReshape(){
this.reshapefactor=new ReshapeFactor(){
public boolean canReshape(){
return true;
}
};
}
public void reshape(){}
}
*/
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~``
/*
*
*
*
*
class LBox extends Structrue{
//public static final int LBOX
public LBox(ActionBtn actionbtn,MainFrame mainframe){
super(actionbtn,mainframe);
this.setShape(Structrue.LBox_V);
reshape();
}
protected void configDown(){
this.downfactor=new DownFactor(){
public boolean canMoveDown(){
return true;
}};
}
protected void configRight(){
this.rightfactor=new RightFactor(){
public boolean canMoveRight(){
return true;
}};
}
protected void configLeft(){
this.leftfactor=new LeftFactor(){
public boolean canMoveLeft(){return true;}
};
}
protected void configReshape(){
this.reshapefactor=new ReshapeFactor(){
public boolean canReshape(){return true;}
};
}
public void reshape(){
if(reshapefactor.canReshape()){
switch(this.getShape()) {
case Structrue.LBox_R:
btn[1].setLocation(btn[2].getX(),btn[2].getY()+15);
btn[0].setLocation(btn[2].getX(),btn[1].getY()+15);
btn[3].setLocation(btn[2].getX()-15,btn[2].getY());
btn[4].setLocation(btn[3].getX()-15,btn[2].getY());
this.setShape(Structrue.LBox_V);
break;
case Structrue.LBox_H:
btn[1].setLocation(btn[2].getX()+15,btn[2].getY());
btn[0].setLocation(btn[1].getX()+15,btn[2].getY());
btn[3].setLocation(btn[2].getX(),btn[2].getY()+15);
btn[4].setLocation(btn[2].getX(),btn[3].getY()+15);
this.setShape(Structrue.LBox_R);
break;
case Structrue.LBox_V:
btn[1].setLocation(btn[2].getX(),btn[2].getY()-15);
btn[0].setLocation(btn[2].getX(),btn[1].getY()-15);
btn[3].setLocation(btn[2].getX()+15,btn[2].getY());
btn[4].setLocation(btn[3].getX()+15,btn[2].getY());
this.setShape(Structrue.LBox_H);
break;
}
}
}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class LBox extends Structrue{
public LBox(ActionBtn actionbtn,MainFrame mainframe){
super(actionbtn,mainframe);
this.setShape(Structrue.LBox_V);
reshape();
}
protected void configDown(){
this.downfactor=new DownFactor(){
public boolean canMoveDown(){
return true;
}};
}
protected void configRight(){
this.rightfactor=new RightFactor(){
public boolean canMoveRight(){
return true;
}};
}
protected void configLeft(){
this.leftfactor=new LeftFactor(){
public boolean canMoveLeft(){return true;}
};
}
protected void configReshape(){
this.reshapefactor=new ReshapeFactor(){
public boolean canReshape(){return true;}
};
}
public void reshape(){
if(reshapefactor.canReshape()){
switch(this.getShape()){
case Structrue.LBox_H:
btn[1].setLocation(btn[2].getX(),btn[2].getY()-15);
btn[0].setLocation(btn[2].getX(),btn[1].getY()-15);
btn[3].setLocation(btn[2].getX()-15,btn[2].getY());
btn[4].setLocation(btn[2].getX(),btn[2].getY()+15);
this.setShape(Structrue.LBox_V);
break;
case Structrue.LBox_V:
btn[1].setLocation(btn[2].getX()+15,btn[2].getY());
btn[0].setLocation(btn[1].getX()+15,btn[2].getY());
btn[3].setLocation(btn[2].getX(),btn[2].getY()-15);
btn[4].setLocation(btn[2].getX()-15,btn[2].getY());
this.setShape(Structrue.LBox_H);
break;
}
}
}
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -