List deleteCells = new ArrayList( ); for ( int i = 0; i < rowCount; i++ )
if ( getColumnCount( ) == 1 )
	public void deleteColumn( int columnNumber ) throws SemanticException	{		transStar( TRANS_LABEL_DELETE_COLUMN );		int rowCount = getRowCount( );		ColumnHandle column = (ColumnHandle) getColumn( columnNumber );		List deleteCells = new ArrayList( );		for ( int i = 0; i < rowCount; i++ )		{			Object row = getRow( i + 1 );			TableHandleAdapter.RowUIInfomation info = getRowInfo( row );			deleteCells.add( info.getAllChildren( ).get( columnNumber - 1 ) );		}		List trueDeleteCells = new ArrayList( );		int size = deleteCells.size( );		for ( int i = 0; i < size; i++ )		{			Object cell = deleteCells.get( i );			CellHandleAdapter cellAdapt = HandleAdapterFactory.getInstance( )					.getCellHandleAdapter( cell );			if ( cellAdapt.getColumnNumber( ) == columnNumber					&& cellAdapt.getColumnSpan( ) == 1					&& !trueDeleteCells.contains( cell ) )			{				trueDeleteCells.add( cell );			}		}		List temp = new ArrayList( );		for ( int i = 0; i < size; i++ )		{			Object cell = deleteCells.get( i );			if ( !trueDeleteCells.contains( cell ) && !temp.contains( cell ) )			{				CellHandleAdapter cellAdapt = HandleAdapterFactory.getInstance( )						.getCellHandleAdapter( cell );				cellAdapt.setColumnSpan( cellAdapt.getColumnSpan( ) - 1 );				temp.add( cell );			}		}		size = trueDeleteCells.size( );		for ( int i = 0; i < size; i++ )		{			CellHandle cell = (CellHandle) trueDeleteCells.get( i );			cell.drop( );		}		column.drop( );		transEnd( );		reload( );	}