[]
        
首页
开发者学堂
文档
论坛
市场
生态机会
活动
立即试用
(Showing Draft Content)

IOutlineColumn

Interface IOutlineColumn


public interface IOutlineColumn
表示工作表的大纲列。

大纲列以树视图显示层级行数据。使用 IWorksheet.getOutlineColumn() 访问大纲列,然后为层级显示配置列索引、可见性选项和级别设置。


 worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
 worksheet.getRange("A2").setIndentLevel(1);
 IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
 outlineColumn.setColumnIndex(0);
 outlineColumn.setShowImage(true);
 
  • Method Details

    • getColumnIndex

      int getColumnIndex()
      获取显示为大纲列的列的从零开始的索引。

      大纲列会根据工作表中的缩进级别,以树状结构显示层级行。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       int columnIndex = outlineColumn.getColumnIndex();
       
      Returns:
      显示为大纲列的列的从零开始的索引。 大纲列会根据工作表中的缩进级别,以树状结构显示层级行。
    • setColumnIndex

      void setColumnIndex(int value)
      设置大纲列的列索引。

      指定的列将作为树状结构显示层级行。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       
      Parameters:
      value - 要显示为大纲列的列的从零开始的索引。
    • getShowImage

      boolean getShowImage()
      获取是否在大纲列中显示图像。

      启用此属性后,大纲列可以为层级行显示通过 getImages() 配置的级别图像。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowImage(true);
       boolean showImage = outlineColumn.getShowImage();
       
      Returns:
      如果在大纲列中显示通过 getImages() 配置的级别图像,则为 true;否则为 false。
    • setShowImage

      void setShowImage(boolean value)
      设置是否在大纲列中显示图像。

      启用此属性后,大纲列可以为层级行显示通过 getImages() 配置的级别图像。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowImage(true);
       
      Parameters:
      value - true 表示在大纲列中显示图像;否则为 false。
    • getShowCheckBox

      boolean getShowCheckBox()
      获取是否在大纲列中显示复选框。

      启用此属性后,大纲列会为层级显示中的行显示复选框。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       boolean showCheckBox = outlineColumn.getShowCheckBox();
       
      Returns:
      如果在大纲列中显示复选框,则为 true;否则为 false。
    • setShowCheckBox

      void setShowCheckBox(boolean value)
      设置是否在大纲列中显示复选框。

      启用此属性后,大纲列会为层级显示中的行显示复选框。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowCheckBox(true);
       
      Parameters:
      value - true 表示在大纲列中显示复选框;否则为 false。
    • getShowIndicator

      boolean getShowIndicator()
      获取是否在大纲列中显示大纲指示器。

      大纲指示器显示大纲列中层次行的展开或折叠状态。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowIndicator(true);
       boolean showIndicator = outlineColumn.getShowIndicator();
       
      Returns:
      如果在大纲列中显示大纲指示器,则为 true;否则为 false。
    • setShowIndicator

      void setShowIndicator(boolean value)
      设置是否在大纲列中显示大纲指示器。

      该指示器用于显示大纲列中层级行的展开或折叠状态。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowIndicator(true);
       
      Parameters:
      value - true 表示显示大纲指示器;否则为 false。
    • getMaxLevel

      int getMaxLevel()
      获取大纲列的最大行大纲级别。

      最大级别决定大纲列支持多少个层次行级别。默认值为 10。

      
       worksheet.getRange("A1:A4").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}, {"Node 1.1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       worksheet.getRange("A4").setIndentLevel(2);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setMaxLevel(3);
       int maxLevel = outlineColumn.getMaxLevel();
       
      Returns:
      大纲列的最大行大纲级别。默认值为 10。
    • setMaxLevel

      void setMaxLevel(int value)
      设置大纲列的最大行大纲级别。

      最大级别决定大纲列支持多少个层级行级别。

      
       worksheet.getRange("A1:A4").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}, {"Node 1.1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       worksheet.getRange("A4").setIndentLevel(2);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setMaxLevel(3);
       
      Parameters:
      value - 最大行大纲级别。
    • getImages

      List<ImageSource> getImages()
      获取用于每个大纲级别的图像。

      使用此方法可访问大纲列的图像集合。返回列表中的每一项表示启用图像后为特定大纲级别显示的图像。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowImage(true);
       outlineColumn.getImages().add(new ImageSource(new java.io.ByteArrayInputStream(new byte[] {(byte) 137, 80, 78, 71, 13, 10, 26, 10}), ImageType.PNG));
       java.util.List<ImageSource> images = outlineColumn.getImages();
       
      Returns:
      用于每个大纲级别的图像。 使用此方法可访问大纲列的图像集合。返回列表中的每一项表示启用图像后为特定大纲级别显示的图像。
    • getExpandIndicator

      ImageSource getExpandIndicator()
      获取大纲列中用作展开指示器的图像。

      当大纲列显示层级指示器时,此图像会显示在可展开的行上。

      
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setExpandIndicator(new ImageSource(
           new java.io.ByteArrayInputStream(new byte[] {(byte) 137, 80, 78, 71, 13, 10, 26, 10}),
           ImageType.PNG));
       ImageSource indicator = outlineColumn.getExpandIndicator();
       
      Returns:
      大纲列中用作展开指示器的图像。 当大纲列显示层级指示器时,此图像会显示在可展开的行上。
    • setExpandIndicator

      void setExpandIndicator(ImageSource value)
      设置大纲列中用作展开指示器的图像。

      当大纲列显示层级指示器时,此图像会显示在可展开的行上。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setExpandIndicator(new ImageSource(
           new java.io.ByteArrayInputStream(new byte[] {(byte) 137, 80, 78, 71, 13, 10, 26, 10}),
           ImageType.PNG));
       
      Parameters:
      value - 展开指示器的图像源。不得为 null。
    • getCollapseIndicator

      ImageSource getCollapseIndicator()
      获取大纲列中用作折叠指示器的图像。

      当大纲列为当前大纲级别显示折叠指示器时,此图像会显示在分组行上。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setCollapseIndicator(new ImageSource(
           new java.io.ByteArrayInputStream(new byte[] {(byte) 137, 80, 78, 71, 13, 10, 26, 10}),
           ImageType.PNG));
       ImageSource indicator = outlineColumn.getCollapseIndicator();
       
      Returns:
      大纲列中用作折叠指示器的图像。 当大纲列为当前大纲级别显示折叠指示器时,此图像会显示在分组行上。
    • setCollapseIndicator

      void setCollapseIndicator(ImageSource value)
      设置大纲列中用作折叠指示器的图像。

      当大纲列显示层级指示器时,此图像会显示在可折叠的行上。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setCollapseIndicator(new ImageSource(
           new java.io.ByteArrayInputStream(new byte[] {(byte) 137, 80, 78, 71, 13, 10, 26, 10}),
           ImageType.PNG));
       
      Parameters:
      value - 折叠指示器的图像源。不支持 null。
    • setCheckStatus

      void setCheckStatus(int row, boolean checkStatus)
      设置大纲列中指定行的勾选状态。

      当大纲列显示复选框时,使用此方法可设置某一行是否标记为已选中。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowCheckBox(true);
       outlineColumn.setCheckStatus(1, true);
       
      Parameters:
      row - 要更改其勾选状态的行索引。
      checkStatus - 指定行是否已选中。
    • getCheckStatus

      boolean getCheckStatus(int row)
      获取行的勾选状态。

      启用复选框后,使用此方法确定指定的大纲行是否已勾选。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.setShowCheckBox(true);
       outlineColumn.setCheckStatus(1, true);
       boolean checked = outlineColumn.getCheckStatus(1);
       
      Parameters:
      row - 行的索引。
      Returns:
      指定行是否已勾选。
    • setCollapsed

      void setCollapsed(int row, boolean collapsed)
      设置指定行在大纲列中是否折叠。

      使用此方法可设置大纲层级结构中的行是否以折叠状态显示。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       worksheet.getOutline().setSummaryRow(SummaryRow.Above);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.refresh();
       outlineColumn.setCollapsed(1, true);
       boolean collapsed = outlineColumn.getCollapsed(1);
       
      Parameters:
      row - 要设置折叠状态的行的索引。
      collapsed - true 表示以折叠状态显示指定行;否则为 false。
    • getCollapsed

      boolean getCollapsed(int row)
      获取指定行在大纲列中是否折叠。

      使用此方法可读取大纲层级结构中某行的折叠状态。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}});
       worksheet.getRange("A3").setIndentLevel(1);
       worksheet.getOutline().setSummaryRow(SummaryRow.Above);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       outlineColumn.refresh();
       outlineColumn.setCollapsed(1, true);
       boolean collapsed = outlineColumn.getCollapsed(1);
       
      Parameters:
      row - 要获取折叠状态的行的索引。
      Returns:
      指定行是否已折叠。
    • refresh

      void refresh()
      刷新大纲列。

      根据工作表中的当前缩进级别,为当前大纲列重新构建行大纲层级结构。更改层级数据或更新缩进级别后,使用此方法可应用最新的大纲结构。

      
       worksheet.getRange("A1:A4").setValue(new Object[][] {{"Name"}, {"Node 1"}, {"Node 1.1"}, {"Node 2"}});
       worksheet.getRange("A3").setIndentLevel(1);
       IOutlineColumn outlineColumn = worksheet.getOutlineColumn();
       outlineColumn.setColumnIndex(0);
       worksheet.getRange("A4").setIndentLevel(1);
       outlineColumn.refresh();