DBGridEh 合理的排序使用

查看网上代码后个人完善得出 可共用于任何DBGridEh

复制粘贴过去即可 ^_^b ~ 更加合理哦~

 

procedure TFormSort.dbgRespTitleClick(Column: TColumnEh);
var
  i: Integer;
  sKeyFieldName: string;
  dataSet: TClientDataSet;
begin
  inherited;
  if not Assigned(Column.Field.dataSet) then Exit;
  dataSet:= TClientDataSet(Column.Field.dataSet);
  sKeyFieldName:= Column.FieldName;
  if dataSet.FieldByName(sKeyFieldName).FieldKind = fkLookup then
    sKeyFieldName:= dataSet.FieldByName(sKeyFieldName).KeyFields;

  case Column.Title.SortMarker of
    smNoneEh:
      begin                                     
        Column.Title.SortMarker:= smUpEh;
        dataSet.IndexName:= '';
        dataSet.IndexFieldNames:= sKeyFieldName;
      end;
    smUpEh:
      begin
        Column.Title.SortMarker:= smDownEh;
        i:= TClientDataSet(dataSet).IndexDefs.IndexOf('i' + sKeyFieldName);
        if i = -1 then
        begin
          with dataSet.IndexDefs.AddIndexDef do
          begin
            Name:= 'i' + sKeyFieldName;
            Fields:= sKeyFieldName;
            DescFields:= sKeyFieldName;
          end;
        end;
        dataSet.IndexFieldNames:= '';
        dataSet.IndexName:= 'i' + sKeyFieldName;
      end;
    smDownEh:
      begin             
        Column.Title.SortMarker:= smNoneEh;
        dataSet.IndexName:= '';
        dataSet.IndexFieldNames:= '';
      end;
  end;
end;

内容概要:本文系统研究了基于事件触发机制的孤岛微电网二次无差协同控制策略,旨在实现低通信开销下电压、频率的无静差恢复与有功/无功功率的精准共享。通过构建分层协同控制架构,融合事件触发机制与分布式协同控制算法,有效降低系统通信负担,提升控制效率与抗干扰能力。文中详细设计了事件触发条件、控制器协同逻辑及应对DoS(拒绝服务)攻击的弹性控制机制,并在Simulink平台搭建多分布式电源(DG)孤岛微电网仿真模型,对所提控制策略进行全面验证。仿真结果表明,该方法不仅能够保证系统在正常工况下的稳定运行,还能在遭受间歇性通信攻击时维持电压频率的快速恢复与功率均衡,展现出良好的鲁棒性与容错能力。; 适合人群:具备电力系统自动化、分布式控制、微电网运行与控制等相关专业知识背景,从事新能源并网、智能微电网、分布式能源系统研究的研究生、科研人员及电力电子与自动化领域的工程技术人员。; 使用场景及目标:①应用于孤岛微电网中分布式电源的二次电压与频率协同控制设计;②优化微电网通信资源利用,降低通信频率与带宽需求;③提升系统对DoS攻击等网络异常事件的容忍能力与运行韧性;④实现多目标协同控制,兼顾电能质量恢复与功率均分的综合性能。; 阅读建议:建议结合提供的Simulink仿真模型深入理解控制逻辑、事件触发判据设计及参数整定过程,重点关注控制器间的协同机制、触发阈值对系统性能的影响以及在不同扰动工况(如负载突变、通信中断)下的动态响应特性,以便于在实际工程项目中进行复现、优化与拓展应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值