Java实现获取Excel中的表单控件

 更新时间:2022年05月27日 11:45:42   作者:E-iceblue  
Excel中可通过【开发工具】菜单栏下插入表单控件,如文本框、单选按钮、复选框、组合框等等。本文将利用Java实现获取Excel中的表单控件,需要的可以参考一下

Excel中可通过【开发工具】菜单栏下插入表单控件,如文本框、单选按钮、复选框、组合框等等,插入后的控件可执行设置控件格式,如大小、是否锁定、位置、可选文字、数据源区域、单元格链接等。当Excel中已插入上述控件,需要读取时,也可以使用本文中的方法来读取。下面,将通过Java代码示例展示如何来获取Excel文档中的表单控件。以下是读取的方法及步骤,供参考。

引入jar包

按照如下方法来引用Spire.Xls.jar 版本:5.1.0

方法1

将 Free Spire.XLS for Java 包 下载 到本地,解压,找到lib文件夹下的Spire.Xls.jar文件。然后在IDEA中打开“Project Structure”界面,然后执行如图步骤来手动导入本地路径下的jar文件:

方法2:通过 Maven仓库 下载导入,如下配置pom.xml:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <name>e-iceblue</name>
            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>

代码示例

Java

import com.spire.xls.*;
import com.spire.xls.core.ICheckBox;
import com.spire.xls.core.IRadioButton;
import com.spire.xls.core.ISpinnerShape;

public class GetFormControl {
    public static void main(String[] args) {
        //创建Workbook类的实例,加载Excel文档
        Workbook wb = new Workbook();
        wb.loadFromFile("AddControls.xlsx");

        //获取第1张工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //获取TextBox
        String textbox =  sheet.getTextBoxes().get(0).getText();
        System.out.println(textbox);

        //获取Radio Button
        for(int i = 0; i<sheet.getRadioButtons().getCount();i++)
        {
            IRadioButton radioButton = sheet.getRadioButtons().get(i);
            String name = radioButton.getCheckState().name();
            String text = radioButton.getText();
            boolean islocked = radioButton.isLocked();
            System.out.println(name + text + " 是否锁定:"+ islocked);
        }

        //获取Combo Box控件中的选中的值(注:非列表中所有选项值)
        String value =  sheet.getComboBoxes().get(0).getSelectedValue();
        System.out.println(value);

        //获取Checkbox
        for(int z = 0;z< sheet.getCheckBoxes().getCount();z++)
        {
            ICheckBox checkBox = sheet.getCheckBoxes().get(z);
            String text = checkBox.getText();
            String name = checkBox.getCheckState().name();
            String alternativetext = checkBox.getAlternativeText();
            System.out.println(text + name + alternativetext);
        }

        //获取SpinnerShape
        for(int j  = 0;j<sheet.getSpinnerShapes().getCount();j++)
        {
            ISpinnerShape spinnerShape = sheet.getSpinnerShapes().get(j);
            String rangeAddress = spinnerShape.getLinkedCell().getRangeAddress();
            int currentValue = spinnerShape.getCurrentValue();
            System.out.println(rangeAddress + "\n" + currentValue);
        }

    }
}

获取效果如图所示:

到此这篇关于Java实现获取Excel中的表单控件的文章就介绍到这了,更多相关Java获取Excel表单控件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Mybatis多参数及实体对象传递实例讲解

    Mybatis多参数及实体对象传递实例讲解

    在使用Mybatis的时候,经常会有各种各样的参数传递,不同类型,不同个数的参数,下面小编通过例子给大家讲解下Mybatis多参数及实体对象传递,一起看看吧
    2016-12-12
  • java基础之Integer与int类型输出示例解析

    java基础之Integer与int类型输出示例解析

    这篇文章主要为大家介绍了java基础之Integer与int类型输出示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • JMeter参数化4种实现方式(小结)

    JMeter参数化4种实现方式(小结)

    参数化是自动化测试脚本的一种常用技巧,可将脚本中的某些输入使用参数来代替,JMeter提供了多种参数化方式,下面就其中常用的4种展开阐述,感兴趣的可以来了解一下
    2021-12-12
  • springboot自定义拦截器简单使用及举例

    springboot自定义拦截器简单使用及举例

    Spring Boot拦截器是AOP的一种实现,专门拦截对控制层的请求,主要应用于判断用户权限,拦截webSocket请求,下面这篇文章主要给大家介绍了关于springboot自定义拦截器简单使用及举例的相关资料,需要的朋友可以参考下
    2023-01-01
  • IDEA解决src和resource下创建多级目录的操作

    IDEA解决src和resource下创建多级目录的操作

    这篇文章主要介绍了IDEA解决src和resource下创建多级目录的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • springboot security之前后端分离配置方式

    springboot security之前后端分离配置方式

    这篇文章主要介绍了springboot security之前后端分离配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Java8 Comparator排序方法实例详解

    Java8 Comparator排序方法实例详解

    这篇文章主要介绍了Java8 Comparator排序方法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Javaweb动态开发最重要的Servlet详解

    Javaweb动态开发最重要的Servlet详解

    动态web的核心是Servlet,由tomcat解析并执行,本质是Java中的一个类(面向对象)这个类的功能十分强大几乎可以完成全部功能,在Java规范中只有Servlet实现类实例化的对象才能被浏览器访问,所以掌握Servlet具有重要意义
    2022-08-08
  • SpringMVC结合ajaxfileupload.js实现文件无刷新上传

    SpringMVC结合ajaxfileupload.js实现文件无刷新上传

    这篇文章主要介绍了SpringMVC结合ajaxfileupload.js实现文件无刷新上传,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • 如何使用IDEA创建MAPPER模板过程图解

    如何使用IDEA创建MAPPER模板过程图解

    这篇文章主要介绍了如何使用IDEA创建MAPPER模板,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05

最新评论