DBGridEh基本操作
- 导出到excel等文件类型
uses DBGridEhImpExp
//导出到文本文件 TDBGridEhExportAsText //导出到Unicode文本 TDBGridEhExportAsUnicodeText //导出到CSV TDBGridEhExportAsCSV //导出到HTML TDBGridEhExportAsHTML //导出到RTF TDBGridEhExportAsRTF //导出到XLS TDBGridEhExportAsXLS //导出到XLSX TDBGridEhExportAsXlsx
//示例
procedure TForm1.Button1Click(Sender: TObject); var Path:string; begin GetDir(0,Path); ExportDBGridEhToXlsx(DBGridEh,Path+'\File1.xlsx',[]); ShowMessage('Export is finished'); end;
- 多表头
需要打开多表头支持TitleParams->MultiTitle选择TRUE 给表头赋值时输入格式为: DBGridEh.Columns[0].FieldName:='Name|FirstName'; DBGridEh.Columns[0].FieldName:='Name|LastName'; 相同合并的表头需要用竖线'|'分割
- 页脚合计等功能
FooterRowCount需要输入页脚汇总的行数,比如1 单击要汇总列的Footers属性,在结构视图点击右键选择Add Item出现此列页脚的属性,在ValueType选择需要进行的计算,常用的有计数,合计,最大值,最小值, 其中fvtFieldValue是根据数据集中字段进行计算,在FieldName属性中,可以选择要汇总合计的字段 ,在DisplayFormat中可以输入要显示值得格式比如0.00, ValueType是fvtStaticText中是显示静态文本
需要将dbgrideh的属性中的sumlist中的Active 设置为 True才能根据字段进行计算
- 复选框列
选中要显示复选框的列,设置CheckBoxes为True
在FieldName中选中数据集中要显示的列,数据集中这个字段必须设置为Bit类型
- 显示表中表
主表连接方式:DBGridEh1->DataSource1->MemTableEh1->DataSetDriverEh1->ADOQuery1->ADOConnection1
ADOQuery1.sql.text:='select * from WareOut'
DBGridEH1.RowDetailPanel.Active:=True;打开显示子表的Panel
把DBGridEH2放入DBGridEH1打开的Panel中,并设置DBGridEH2的Algin为alClient
子表连接方式:DBGridEh2->DataSource2->MemTableEh2->DataSetDriverEh2->ADOQuery2->ADOConnection1
ADOQuery2.sql.text:='select * from WareOutDetail'
设置MemTableEh2的MasterFields和DetailFields
- 获取单元格值
//获取当前点击单元格值 procedure TForm1.DBGridEh1CellClick(Column: TColumnEh); begin ShowMessage(Column.DisplayText); end; //获取当前选择行某列单元格值 procedure TForm1.DBGridEh1CellClick(Column: TColumnEh); begin ShowMessage(DBGridEh1.Columns[1].DisplayText); end;
- 表格指示器显示数字行号
DBGridEh1.IndicatorOptions := [gioShowRowIndicatorEh, gioShowRecNoEh]; DBGridEh1.IndicatorParams.RecNoShowStep := 10; //定义多少行显示行号,默认为●鼠标点击后显示当前行号
- 隔行变色
EvenRowColor 偶数行颜色
OddRowColor 奇数行颜色
- 冻结列
FrozenCols 冻结列,赋值2即冻结左边两列
- 纵向相同单元格值不重复显示
本文来自博客园,作者:liessay,转载请注明原文链接:https://www.cnblogs.com/liessay/p/5317193.html