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

ISortFields

Interface ISortFields


public interface ISortFields
表示排序条件列表。

提供对 ISort 操作所使用的 ISortField 条目的访问。使用此接口可管理排序字段,这些字段定义应用排序时数据的排序方式。


 worksheet.getRange("A1:B4").setValue(new Object[][] {
     {"Name", "Score"},
     {"Tom", 90},
     {"Amy", 80},
     {"Tom", 70}
 });
 ITable table = worksheet.getTables().add(worksheet.getRange("A1:B4"), true);
 ISortFields sortFields = table.getSort().getSortFields();
 sortFields.add(new ValueSortField(worksheet.getRange("A2:A4"), SortOrder.Ascending));
 table.getSort().apply();
 
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(ISortField sortField)
    添加排序字段。
    void
    清除排序字段列表。
    get(int index)
    获取排序字段列表中指定索引处的排序字段。
    int
    获取排序字段列表中的排序字段数量。
    boolean
    remove(ISortField sortField)
    移除排序字段。
  • Method Details

    • get

      ISortField get(int index)
      获取排序字段列表中指定索引处的排序字段。

      使用此方法可获取已添加到当前 ISortFields 集合中的排序字段。

      
       worksheet.getRange("A1:B4").setValue(new Object[][] {
           {"Score", "Name"},
           {2, "B"},
           {1, "C"},
           {1, "A"}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B4"), true);
       ISortFields sortFields = table.getSort().getSortFields();
       sortFields.add(new ValueSortField(worksheet.getRange("A2:A4"), SortOrder.Ascending));
       ISortField sortField = sortFields.get(0);
       
      Parameters:
      index - 要检索的排序字段的索引。
      Returns:
      指定索引处的排序字段。
    • add

      void add(ISortField sortField)
      添加排序字段。

      使用此方法可将排序条件(例如值、图标、字体颜色或单元格颜色排序字段)添加到 ISort.getSortFields() 返回的排序字段列表中。添加所需的排序字段后,调用 ISort.apply() 应用排序。

      
       worksheet.getRange("A1:B4").setValue(new Object[][] {
           {"Name", "Score"},
           {"Tom", 90},
           {"Amy", 75},
           {"Bob", 85}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B4"), true);
       ISortField sortField = new ValueSortField(worksheet.getRange("B1:B2"), SortOrder.Ascending);
       table.getSort().getSortFields().add(sortField);
       
      Parameters:
      sortField - 要添加的排序字段。
    • remove

      boolean remove(ISortField sortField)
      移除排序字段。
      
       worksheet.getRange("A1:A4").setValue(new Object[][] {{5}, {3}, {4}, {2}});
       ISort sort = worksheet.getSort();
       sort.setRange(worksheet.getRange("A1:A4"));
       ISortField sortField = new ValueSortField(worksheet.getRange("A1:A4"));
       sort.getSortFields().add(sortField);
       boolean removed = sort.getSortFields().remove(sortField);
       
      Parameters:
      sortField - 要移除的排序字段。
      Returns:
      如果移除了指定的排序字段,则为 true;否则为 false。
    • getCount

      int getCount()
      获取排序字段列表中的排序字段数量。

      返回此排序字段集合中的排序字段数。

      
       worksheet.getRange("A1:A4").setValue(new Object[][] {{5}, {3}, {4}, {2}});
       ISort sort = worksheet.getSort();
       sort.setRange(worksheet.getRange("A1:A4"));
       sort.getSortFields().add(new ValueSortField(worksheet.getRange("A1:A4")));
       int count = sort.getSortFields().getCount();
       
      Returns:
      集合中的排序字段数。
    • clear

      void clear()
      清除排序字段列表。

      从 ISort.getSortFields() 返回的排序条件列表中移除所有排序字段。调用此方法后,排序不再具有任何已配置的排序条件,直到添加新的 ISortField 条目。

      
       worksheet.getRange("A1:A4").setValue(new Object[][] {{5}, {3}, {4}, {2}});
       ISort sort = worksheet.getSort();
       sort.setRange(worksheet.getRange("A1:A4"));
       sort.getSortFields().add(new ValueSortField(worksheet.getRange("A1:A4")));
       sort.getSortFields().clear();