private void updateActiveSheetAfterSheetReorder(int oldIndex, int newIndex) { // adjust active sheet if necessary int active = getActiveSheetIndex(); if(active == oldIndex) { // moved sheet was the active one setActiveSheet(newIndex); } else if ((active < oldIndex && active < newIndex) || (active > oldIndex && active > newIndex)) { // not affected } else if (newIndex > oldIndex) { // moved sheet was below before and is above now => active is one less setActiveSheet(active-1); } else { // remaining case: moved sheet was higher than active before and is lower now => active is one more setActiveSheet(active+1); } }
if(active == index) { setActiveSheet(newSheetIndex); } else if (active > index) { setActiveSheet(active-1);
private void updateActiveSheetAfterSheetReorder(int oldIndex, int newIndex) { // adjust active sheet if necessary int active = getActiveSheetIndex(); if(active == oldIndex) { // moved sheet was the active one setActiveSheet(newIndex); } else if ((active < oldIndex && active < newIndex) || (active > oldIndex && active > newIndex)) { // not affected } else if (newIndex > oldIndex) { // moved sheet was below before and is above now => active is one less setActiveSheet(active-1); } else { // remaining case: moved sheet was higher than active before and is lower now => active is one more setActiveSheet(active+1); } }
HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(file)); HSSFSheet s = wb.getSheetAt(0); wb.setActiveSheet(0); s.showInPane(0, 0); FileOutputStream out = new FileOutputStream(file); wb.write(out); out.close();
wb.setActiveSheet(0); BufferedImage img = null; try {
if(active == index) { setActiveSheet(newSheetIndex); } else if (active > index) { setActiveSheet(active-1);
setActiveSheet(newSheetIndex);
setActiveSheet(newSheetIndex);