我是一名新手,想知道一下dbgrideh与dbgrid相比 主要的功能都加强了那些方面!

解决方案 »

  1.   

    ----DBGRIDEH是Enlib3.0元件包中的元件之一。Enlib3.0元件
    包是一位俄國人為增強Borland系列開發工具功能而開發的第三方
    元件 ... 
    http://mydelphi.8u8.com/kjuse.htm
    尽管TDBGridEh并不是从TCustomDBGrid组件继承而来的,但是在TDBGridEh和TDBGrid中还是有一些相似的属性。 
    它允许仅用一点点代价来转换已存在的TDBGrid组件到TDBGridEh。
    可以按照下面的提示来转转换已存在的TDBGrid组件到TDBGridEh:
    在Delphi的IDE中打开包含有TDBGrid组件的应用程序。 设置视图方式为文本方式(Alt-F12)。 
    if key=VK_RETURN then //Key:回车
    begin
    if (grdDetailData.SelectedIndex=grdDetailData.Columns.Count-1) and not (dgRowSelect in grdDetailData.Options) then
    BEGIN
    if (dgEditing in grdDetailData.Options) and (grdDetailData.Row=grdDetailData.RowCount-1) then //从表GRID能进行编辑和当前光标焦点在最后一行时
    acAddDetailExecute(self)
    else
    begin
    grdDetailData.Row:=grdDetailData.Row+1; //改变光标焦点行到下一行(当为新增加时,这句不用运行
    grdDetailData.SelectedIndex:=0 //改变光标焦点列到第一列
    end;
    END ELSE
    BEGIN
    grdDetailData.SelectedIndex:=grdDetailData.SelectedIndex+1;
    while grdDetailData.Columns[grdDetailData.SelectedIndex].ReadOnly do
    grdDetailData.SelectedIndex:=grdDetailData.SelectedIndex+1;
    END;
    key:=0;
    end;
    if key=VK_INSERT then //Insert键:新增一条记录
    begin
    acAddDetailExecute(self);
    key:=0;
    end;
    if key=VK_DELETE then //Delte: 删除一条记录
    begin
    acDeleteDetailExecute(self);
    key:=0;
    end;页脚合计
    1、设置DBGRIDEH属性的FooterRowCount值为1;
    2、设置DBGRIDEH属性的SumList的Active值为true;
    3、设置你要求和的该列的Footer的ValueType类型为fvtSum;
    4、运行OK!
    在DataSet打开时写:
    DBGridEh1.Columns[0].Footer.Value := IntToStr(DBGridEh1.DataSource.DataSet.RecordCount);
      

  2.   

    DBGridEH吸引我的地方只有一个,那就是可以固定前几列