HotXLS 文档

TXLSXStructuralEditRegistry 类

TXLSXWorksheet.StructuralEditRegistry 在行或列插入和删除之后协调对引用敏感的更新

内置参与者始终更新 HotXLS 公式、名称、有效性验证、条件格式、批注、超链接、图形、表格、查询绑定、方案、数据表、打印元数据、受保护区域、迷你图、类型化数据透视表以及可识别的保留扩展引用

应用程序可以为自己的工作表元数据注册有序参与者,而无需替换内置事务

声明

type
  TXLSXStructuralEdit = record
    RowFrom: Integer;
    RowDelta: Integer;
    ColFrom: Integer;
    ColDelta: Integer;
  end;

  IXLSXStructuralEditParticipant = interface
    procedure ApplyStructuralEdit(Worksheet: TXLSXWorksheet;
      const Edit: TXLSXStructuralEdit);
  end;

  TXLSXStructuralEditRegistry = class
    procedure RegisterParticipant(
      const Participant: IXLSXStructuralEditParticipant);
    procedure UnregisterParticipant(
      const Participant: IXLSXStructuralEditParticipant);
    procedure Clear;
    property Count: Integer;
  end;

编辑字段

RowFrom受影响的第一行(基于 1),当行未更改时为零
RowDelta正数为插入的行数,负数为删除的行数
ColFrom受影响的第一列(基于 1),当列未更改时为零
ColDelta正数为插入的列数,负数为删除的列数

参与者规则

示例

type
  TMetadataUpdater = class(TInterfacedObject,
    IXLSXStructuralEditParticipant)
  public
    procedure ApplyStructuralEdit(Worksheet: TXLSXWorksheet;
      const Edit: TXLSXStructuralEdit);
  end;

Updater := TMetadataUpdater.Create;
Sheet.StructuralEditRegistry.RegisterParticipant(Updater);
Sheet.InsertRows(4, 2);

另请参阅