Dbgrid 中表字段所在的列序号

//--------------------------------------------------------------------------------
// 功能:返回表字段在 DBGrid 列中的序号,首序号为0
// 参数: pDbGrid:TDbGrid;        DBGrid
//               pcFieldName : string    数据表字段名,

W{ifT03垠%h[

字段名不区分大小写
// 返回:当表字段在 DBGrid 中存在时,返回表字段所在的列的序号,首序号为0
//             否则,$=+HyICk%V",n?Z8G#G=hM返回 -1
//例子:DbGrid1.SelectedIndex := GetDbGridColumnIndex( DbGrid1, ''''Price''''  );
//--------------------------------------------------------------------------------
Function GetDbGridColumnIndex( pDbGrid:TDbGrid; pcFieldName : string  ):integer;
var nFldLoop : integer ;
    cFldName : string ;
begin
  Result := -1 ;
  For nFldLoop := 0 to pDbGrid.Columns.Count-1 do
  begin
      cFldName := pDbGrid.Columns[nFldLoop].FieldName ;
      If uppercase(pcFieldName) = uppercase( cFldName ) then
      begin
         Result := nFldLoop ;
         exit ;
      end;
  end;
end;

 

例子:

    DbGrid1.SelectedIndex := GetDbGridColumnIndex( DbGrid1, ''''Price''''  );
    将DbGrid1的当前列定位到字段Price上。[!-国]1{:UwO理gVF)育专业H*#C;中垠h

posted on 2006-12-15 16:03  martian6125  阅读(105)  评论(0编辑  收藏  举报