通過表單控件,用戶可以快速地將數據填寫到模板文檔中,輕松引用單元格數據並與其進行交互。本文通過Java代碼示例介紹如何在Excel表格中添加表單控件,包括文本框、單選按鈕、復選框、組合框、微調按鈕等;以及如何刪除Excel中的指定表單控件。
程序運行環境:Java、IDEA、jdk1.8.0、無需安裝Microsoft Excel
使用工具:Free Spire.XLS for Java (免費版)
jar獲取及導入:官網下載jar包,並解壓,將lib文件夾下的jar文件導入java程序。或者可通過maven倉庫下載導入到Maven項目。如下導入效果:
【Java 示例1】添加表單控件
import com.spire.xls.*; import com.spire.xls.core.*; public class AddFormControl { public static void main(String[] args) { //創建工作簿,獲取第一個工作表 Workbook wb = new Workbook(); Worksheet sheet = wb.getWorksheets().get(0); sheet.getCellRange("A2").setText("姓名: "); //添加文本框 ITextBoxShape textbox = sheet.getTextBoxes().addTextBox(2, 2, 18, 65); textbox.setText("李宏"); textbox.setHAlignment(CommentHAlignType.Center); textbox.setVAlignment(CommentVAlignType.Center); sheet.getCellRange("A4").setText("性別: "); //添加單選按鈕1 IRadioButton radiobutton1 = sheet.getRadioButtons().add(4, 2, 18, 65); radiobutton1.setText("男"); radiobutton1.setCheckState(CheckState.Checked); //添加單選按鈕2 IRadioButton radiobutton2 = sheet.getRadioButtons().add(4, 4, 18, 65); radiobutton2.setText("女"); sheet.getCellRange("A6").setText("愛好:"); //添加復選框1 ICheckBox checkbox1 = sheet.getCheckBoxes().addCheckBox(6, 2, 18, 65); checkbox1.setCheckState(CheckState.Checked); checkbox1.setText("攝影"); //添加復選框2 ICheckBox checkbox2 = sheet.getCheckBoxes().addCheckBox(6, 4, 18, 65); checkbox2.setCheckState(CheckState.Checked); checkbox2.setText("圍棋"); sheet.getCellRange("A8").setText("職業:"); sheet.getCellRange("A20").setText("學生"); sheet.getCellRange("A21").setText("教師"); sheet.getCellRange("A22").setText("醫生"); //添加組合框 IComboBoxShape combobox = sheet.getComboBoxes().addComboBox(8, 2, 18, 65); combobox.setListFillRange(sheet.getCellRange("A20:A22")); combobox.setSelectedIndex(2); sheet.getCellRange("A10").setText("行政級別:"); //添加微調按鈕 ISpinnerShape spinnerShape = sheet.getSpinnerShapes().addSpinner(10,2,18,30); spinnerShape.setCurrentValue(1); spinnerShape.setDisplay3DShading(true); spinnerShape.setLinkedCell(sheet.getCellRange("B10")); spinnerShape.setMin(1); spinnerShape.setMax(5); //保存文檔 wb.saveToFile("AddControls.xlsx", ExcelVersion.Version2013); wb.dispose(); } }
表單控件添加效果:
【Java 示例2】刪除表單控件
import com.spire.xls.*; public class RemoveFormControl { public static void main(String[] args) { //加載Excel工作簿 Workbook wb = new Workbook(); wb.loadFromFile("AddControls.xlsx"); //獲取第一個工作表 Worksheet sheet = wb.getWorksheets().get(0); //刪除工作表中的所有單選按鈕 for(int j = 0; j < sheet.getRadioButtons().getCount(); j ++){ sheet.getRadioButtons().get(j).remove(); } //保存文檔 wb.saveToFile("RemoveFormControl.xlsx",ExcelVersion.Version2013); wb.dispose(); } }
表單控件刪除效果:
(本文完)