⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 a0ed9b71ed61001c1933e602ece9d2a4

📁 QQ连连看游戏源码。完全仿照QQ游戏中的连连看制作的单机版游戏。
💻
📖 第 1 页 / 共 3 页
字号:
				{
					isEmpty = false;
					break;
				}
			}
			if(isEmpty)
			{
				erase(i,j);
				return true;
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况三,纵向=1,横向>1,上横向!=null");
				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));
				return false;
			}
		}
		else if(location.equals("bottomLeftColumn3"))
		{
			for(k=i+1; k<FrameUI.row; k++)
			{
				if(FrameUI.imageBtn[k][j].getIcon() != null)
				{
					isEmpty = false;
					break;
				}
			}
			if(isEmpty)
			{
				erase(i,j);
				return true;
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况三,横向=1,纵向>1,左纵向!=null");
				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));
				return false;
			}
		}
		else if(location.equals("bottomLeftRow3"))
		{
			for(k=j+1; k<FrameUI.column; k++)
			{
				if(FrameUI.imageBtn[FrameUI.row][k].getIcon() != null)
				{
					isEmpty = false;
					break;
				}
			}
			if(isEmpty)
			{
				erase(i,j);
				return true;
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况三,横向>1,纵向=1,下横向!=null");
				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));
				return false;
			}
		}
		else if(location.equals("bottomRightRow4"))
		{
			for(k=j+1; k<FrameUI.column; k++)
			{
				if(FrameUI.imageBtn[i][k].getIcon() != null)
				{
					isEmpty = false;
					break;
				}
			}
		}
		else if(location.equals("bottomRightColumn4"))
		{
			for(k=FrameUI.row+1; k<i; k++)
			{
				if(FrameUI.imageBtn[k][FrameUI.column].getIcon() != null)
				{
					isEmpty = false;
					break;
				}
			}
			if(isEmpty)
			{
				erase(i,j);
				return true;
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况四,横向=1,纵向>1,右纵向!=null");
				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));
				return false;
			}
		}
		else if(location.equals("topLeftRow4"))
		{
			for(k=j+1; k<FrameUI.column; k++)
			{
				if(FrameUI.imageBtn[FrameUI.row][k].getIcon() != null)
				{
					isEmpty = false;
					break;
				}
			}
			if(isEmpty)
			{
				erase(i,j);
				return true;
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况四,横向>1,纵向=1,上横向!=null");
				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));
				return false;
			}
		}
		else if(location.equals("topLeftColumn4"))
		{
			for(k=FrameUI.row+1; k<i; k++)
			{
				if(FrameUI.imageBtn[k][j].getIcon() != null)
				{
					isEmpty = false;
					break;
				}
			}
			if(isEmpty)
			{
				erase(i,j);
				return true;
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况四,横向=1,纵向>1,左纵向!=null");
				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));
				return false;
			}
		}
//		if(isEmpty)
//		{
//			erase(i,j);
//			return true;
//		}
//		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));
//			return false;
//		}
	}
	public void bottomLeftCornerErase1(int i, int j)
	{
		int k=0; 
		int n=0;
		boolean isEmptyC = true;
		boolean isEmptyR = true;
		if(i==FrameUI.row+1 && j==FrameUI.column+1)
		{
			erase(i,j);
		}
		else if(i== FrameUI.row+1 && j>FrameUI.column+1)
		{	
			oneWayNext(i,j,"bottomLeftRow1");
		}
		else if(j==FrameUI.column+1 && i>FrameUI.row+1)
		{
			oneWayNext(i,j,"bottomLeftColumn1");
		}
		else
		{
			for(k=FrameUI.row+1; k<i; k++)
			{
				if(FrameUI.imageBtn[k][FrameUI.column].getIcon()!=null)
				{
					isEmptyC = false;
					break;
				}
			}
			if(isEmptyC)
			{
				for(n=FrameUI.column+1; n<j; n++)
				{
					if(FrameUI.imageBtn[i][n].getIcon() != null)
					{
						isEmptyR = false;
						break;
					}
				}
				if(isEmptyR)
				{
					erase(i,j);
				}
				else
					topRightCornerErase1(i,j);
			}
			else
				topRightCornerErase1(i,j);
		}
	}
	public boolean topRightCornerErase1(int i, int j)
	{
		int k=0; 
		int n=0;
		boolean isEmptyR = true;
		boolean isEmptyC = true;
		if(j==FrameUI.column+1 && i==FrameUI.row+1)
		{
			erase(i,j);
			return true;
		}
		else if(j==FrameUI.column+1 && i>FrameUI.row+1)
		{
			return oneWayNext(i,j,"topRightColumn1");						
		}
		else if(i==FrameUI.row+1 && j>FrameUI.column+1)
		{
			 return oneWayNext(i, j, "topRightRow1");
		}
		else 
		{
			for(k=FrameUI.column+1;k<j;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);
					return true;
				}
				else
				{
					JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
					System.out.println("情况一,距离均超过1,左下角交点有按钮,右上角纵线上有按钮");
					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));
					return false;
				}
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("因为第一种情况下,距离均超过1,左下角交点有按钮,右上角横线上有按钮");
				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));
				return false;
			}
		}
	}
	public boolean 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);
			return true;
		}
		else if(j==FrameUI.column+1 && FrameUI.row>i+1)
		{
			return oneWayNext(i,j,"bottomRightColumn2");						
		}
		else if(FrameUI.row==i+1 && j>FrameUI.column+1)
		{
			return 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);
					return true;
				}
				else
				{
					JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
					System.out.println("情况二,距离均大于1,右纵线上有按钮");
					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));
					return false;
				}
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况二,距离均大于1,下横线上有按钮");
				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));
				return false;
			}
		}
	}
	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);
			//return true;
		}
		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);
				//	return true;
				}
				else
					 bottomRightCornerErase2(i,j);
			}
			else
				 bottomRightCornerErase2(i,j);
		}

	}
	public boolean 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);
			return true;
		}
		else if(FrameUI.column==j+1 && FrameUI.row>i+1)
		{
			return oneWayNext(i,j,"topRightColumn3");						
		}
		else if(FrameUI.row==i+1 && FrameUI.column>j+1)
		{
			return 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);
					return true;
				}
				else
				{
					JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
					System.out.println("情况三,距离均大于1,右纵线上有按钮");
					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));
					return false;
				}
			}
			else
			{
				JOptionPane.showMessageDialog(FrameUI.mainFrame, "考虑两个拐点的情况");
				System.out.println("情况三,距离均大于1,上横线上有按钮");
				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));
				return false;
			}
		}
	}
	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);
		//	return true;
		}
		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");
		}

⌨️ 快捷键说明

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