Java實(shí)現(xiàn)Excel表單控件的添加與刪除
介紹
通過表單控件,用戶可以快速地將數(shù)據(jù)填寫到模板文檔中,輕松引用單元格數(shù)據(jù)并與其進(jìn)行交互。本文通過Java代碼示例介紹如何在Excel表格中添加表單控件,包括文本框、單選按鈕、復(fù)選框、組合框、微調(diào)按鈕等;以及如何刪除Excel中的指定表單控件。
程序運(yùn)行環(huán)境:Java、IDEA、jdk1.8.0、無需安裝Microsoft Excel
使用工具:Free Spire.XLS for Java (免費(fèi)版)
jar獲取及導(dǎo)入:官網(wǎng)下載jar包,并解壓,將lib文件夾下的jar文件導(dǎo)入java程序?;蛘呖赏ㄟ^maven倉庫下載導(dǎo)入到Maven項(xiàng)目。如下導(dǎo)入效果:

Java示例1添加表單控件
import com.spire.xls.*;
import com.spire.xls.core.*;
public class AddFormControl {
public static void main(String[] args) {
//創(chuàng)建工作簿,獲取第一個工作表
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("愛好:");
//添加復(fù)選框1
ICheckBox checkbox1 = sheet.getCheckBoxes().addCheckBox(6, 2, 18, 65);
checkbox1.setCheckState(CheckState.Checked);
checkbox1.setText("攝影");
//添加復(fù)選框2
ICheckBox checkbox2 = sheet.getCheckBoxes().addCheckBox(6, 4, 18, 65);
checkbox2.setCheckState(CheckState.Checked);
checkbox2.setText("圍棋");
sheet.getCellRange("A8").setText("職業(yè):");
sheet.getCellRange("A20").setText("學(xué)生");
sheet.getCellRange("A21").setText("教師");
sheet.getCellRange("A22").setText("醫(yī)生");
//添加組合框
IComboBoxShape combobox = sheet.getComboBoxes().addComboBox(8, 2, 18, 65);
combobox.setListFillRange(sheet.getCellRange("A20:A22"));
combobox.setSelectedIndex(2);
sheet.getCellRange("A10").setText("行政級別:");
//添加微調(diào)按鈕
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();
}
}表單控件刪除效果:

以上就是Java實(shí)現(xiàn)Excel表單控件的添加與刪除的詳細(xì)內(nèi)容,更多關(guān)于Java添加 刪除Excel表單控件的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Java @Value("${xxx}")取properties時中文亂碼的解決
這篇文章主要介紹了Java @Value("${xxx}")取properties時中文亂碼的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
詳細(xì)談?wù)凧ava中l(wèi)ong和double的原子性
原子性是指一個操作或多個操作要么全部執(zhí)行,且執(zhí)行的過程不會被任何因素打斷,要么就都不執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于Java中l(wèi)ong和double原子性的相關(guān)資料,需要的朋友可以參考下2021-08-08
Java虛擬機(jī)調(diào)用Java主類的main()方法
這篇文章主要介紹了Java虛擬機(jī)調(diào)用Java主類的main()方法,前一篇文章我們介紹了關(guān)于Java虛擬機(jī)HotSpot2021-11-11
使用Spring-Retry解決Spring Boot應(yīng)用程序中的重試問題
重試的使用場景比較多,比如調(diào)用遠(yuǎn)程服務(wù)時,由于網(wǎng)絡(luò)或者服務(wù)端響應(yīng)慢導(dǎo)致調(diào)用超時,此時可以多重試幾次。用定時任務(wù)也可以實(shí)現(xiàn)重試的效果,但比較麻煩,用Spring Retry的話一個注解搞定所有,感興趣的可以了解一下2023-04-04
SpringBoot基于Sentinel在服務(wù)上實(shí)現(xiàn)接口限流
這篇文章主要介紹了SpringBoot基于Sentinel在服務(wù)上實(shí)現(xiàn)接口限流,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
Java編程實(shí)現(xiàn)統(tǒng)計(jì)數(shù)組中各元素出現(xiàn)次數(shù)的方法
這篇文章主要介紹了Java編程實(shí)現(xiàn)統(tǒng)計(jì)數(shù)組中各元素出現(xiàn)次數(shù)的方法,涉及java針對數(shù)組的遍歷、比較、運(yùn)算等相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
Springmvc加ajax實(shí)現(xiàn)上傳文件并頁面局部刷新
這篇文章主要介紹了Springmvc加ajax實(shí)現(xiàn)上傳文件并頁面局部刷新,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06

