DBGridEh使用指南

简介:

1.设置表头,是否允许多表头,设置是否只读。

  dbgrdh1.TitleFont.Color:=clBlue;
  dbgrdh1.Flat:=True;
  dbgrdh1.FixedColor:=clSkyBlue; //Flat为True背景渐变才会起作用
  dbgrdh1.TitleHeight:=30;
  dbgrdh1.TitleLines := 2;
  dbgrdh1.ColumnDefValues.Title.Alignment:=taCenter;
  dbgrdh1.UseMultiTitle := true;
  dbgrdh1.Columns[0].HideDuplicates := true;//是否隐藏重复
  dbgrdh1.RowSizingAllowed := True;
  DBgrdh1.DataSource := nil;

2.设置表格颜色

procedure Ttablefrm.dbgrdh1GetCellParams(Sender: TObject; Column: TColumnEh;
  AFont: TFont; var Background: TColor; State: TGridDrawState);
begin
  if dbgrdh1.DataSource <> nil then
  begin
    if dbgrdh1.SumList.RecNo mod 2 = 1 then
      Background := $00FFC4C4
    else
      Background := $00FFDDDD;
  end;
end;

3.添加合计。

  dbgrdh1.FooterRowCount := 1;
  dbgrdh1.SumList.Active := true;
  dbgrdh1.Columns[0].Footer.valuetype := fvtstatictext;//静态文本
  dbgrdh1.Columns[0].Footer.value := '合计:';

  for i := 0 to dbgrdh1.Columns.Count - 1 do
  begin
    if (i>4) and (i < 10) then
    begin
      dbgrdh1.Columns[i].Footer.ValueType := fvtSum;//合计sum
    end;
  end;

 

4.设置打印。

  PrintDBGridEh1.DBGridEh :=dbgrdh1;
  PrintDBGridEh1.SetSubstitutes(['%[打印标题]','住院处结算单']);
  PrintDBGridEh1.Print;

5.设置导出(excel,html,txt)。

procedure OutToFile(IADO : TADOQuery; DgEh : TDBGridEh);

procedure Tfrm_bazl.OutToFile(IADO: TADOQuery; DgEh: TDBGridEh);
var
  ExpClass:TDBGridEhExportclass;
  Ext:String;
  FSaveDialog: TSaveDialog;
begin
  try
    if not IADO.IsEmpty then
    begin
      FSaveDialog := TSaveDialog.Create(Self);
      FSaveDialog.Filter:='Excel 文档 (*.xls)|*.XLS|Text files (*.txt)|*.TXT|Comma separated values (*.csv)|*.CSV|HTML file (*.htm)|*.HTM|Word 文档 (*.rtf)|*.RTF';
      if FSaveDialog.Execute and (trim(FSaveDialog.FileName)<>'') then
      begin
        case FSaveDialog.FilterIndex of
            1: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
            2: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
            3: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
            4: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
            5: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
        end;
        if ExpClass <> nil then
        begin
          if UpperCase(Copy(FSaveDialog.FileName,Length(FSaveDialog.FileName)-2,3)) <> UpperCase(Ext) then
            FSaveDialog.FileName := FSaveDialog.FileName + '.' + Ext;
            if FileExists(FSaveDialog.FileName) then
            begin
              if application.MessageBox('文件名已存在,是否覆盖   ', '提示', MB_ICONASTERISK or MB_OKCANCEL)<>idok then
                exit;
            end;
           Screen.Cursor := crHourGlass;
           SaveDBGridEhToExportFile(ExpClass,DgEh,FSaveDialog.FileName,true);
           Screen.Cursor := crDefault;
           MessageBox(Handle, '导出成功  ', '提示', MB_OK +
             MB_ICONINFORMATION);
          end;
      end;
      FSaveDialog.Destroy;
    end;
  except
    on e: exception do
    begin
      Application.MessageBox(PChar(e.message), '错误', MB_OK + MB_ICONSTOP);
    end;
  end;
end;

 









本文转自鹅倌51CTO博客,原文链接: http://blog.51cto.com/kaixinbuliao/956011如需转载请自行联系原作者






相关文章
|
定位技术
Echarts集成bmap的属性介绍
Echarts集成bmap的属性介绍
481 0
|
SQL 存储 分布式计算
Hive数据仓库设计与优化策略:面试经验与必备知识点解析
本文深入探讨了Hive数据仓库设计原则(分区、分桶、存储格式选择)与优化策略(SQL优化、内置优化器、统计信息、配置参数调整),并分享了面试经验及常见问题,如Hive与RDBMS的区别、实际项目应用和与其他组件的集成。通过代码样例,帮助读者掌握Hive核心技术,为面试做好充分准备。
1276 0
|
SQL 关系型数据库 MySQL
MySql数据库中的视图,索引与数据库sql脚本如何导入与导出---(详细介绍)
MySql数据库中的视图,索引与数据库sql脚本如何导入与导出---(详细介绍)
610 0
|
JavaScript 关系型数据库 测试技术
接口文档管理神器RAP2安装和部署
一 RAP2 RAP2是在RAP1基础上重做的新项目,它包含两个组件(对应两个Github Repository)。 rap2-delos: 后端数据API服务器,基于Koa + MySQLlink rap2-dolores: 前端静态资源,基于React link 什么是RAP? rap是一款API 文档管理工具,在 RAP 中,可以定义接口的 URL、请求 & 响应细节格式等等。
13685 0
|
12月前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品价格预测的深度学习模型
使用Python实现智能食品价格预测的深度学习模型
321 6
|
传感器 存储 供应链
plant simulation物流系统仿真案例
plant simulation物流系统仿真案例
652 0
|
缓存 监控 Java
Java 线程池在高并发场景下有哪些优势和潜在问题?
Java 线程池在高并发场景下有哪些优势和潜在问题?
239 2
|
存储 机器学习/深度学习 缓存
MemLong: 基于记忆增强检索的长文本LLM生成方法
本文介绍了一种名为MemLong的创新长文本处理方法,该方法通过整合外部检索器显著增强了大型语言模型处理长上下文的能力。MemLong采用轻量级设计,利用不可训练的外部记忆库存储历史上下文和知识,并通过检索相关的块级键值对增强模型输入。其技术优势包括分布一致性、高效训练策略及扩展的上下文窗口,能够在单个GPU上处理长达80k个token的文本,同时保持计算效率和内存控制。实验结果显示,MemLong在多个长文本基准数据集上表现出色,显著提升了语言建模能力和上下文学习效果。
1053 1
|
监控 数据可视化 搜索推荐
ERP系统中的财务预测与预算编制解析
【7月更文挑战第25天】 ERP系统中的财务预测与预算编制解析
528 0