int (Point p) { int viewColumnIdx = JBTable.this.columnAtPoint(p); if (viewColumnIdx == -1) return -1; Rectangle headerRect = getHeaderRect(viewColumnIdx); boolean atLeftBound = p.x - headerRect.x < COLUMN_RESIZE_AREA_WIDTH; if (atLeftBound) { return viewColumnIdx == 0 ? viewColumnIdx : viewColumnIdx - 1; } boolean atRightBound = headerRect.x + headerRect.width - p.x < COLUMN_RESIZE_AREA_WIDTH; return atRightBound ? viewColumnIdx : -1; }