首页  编辑  

处理数据网格的编辑框

Tags: /超级猛料/Friends.网友专栏/zswang/函数大全/   Date Created:

(*//

标题:处理数据网格的编辑框

说明:示例添加焦点颜色;获取还没有提交到数据集的字段文本

设计:Zswang

日期:2002-03-31

支持:wjhu111@21cn.com

//*)

///////Begin Source

function GetDBGridEdit(mDBGrid: TDBGrid): TEdit;

var

 I: Integer;

begin

 Result := nil;

 if not Assigned(mDBGrid) then Exit;

 if not mDBGrid.EditorMode then begin

   mDBGrid.EditorMode := True;

   mDBGrid.EditorMode := False;

 end;

 with mDBGrid do for I := 0 to Pred(ComponentCount) do

   if Components[I] is TCustomEdit then begin

     Result := TEdit(Components[I]);

     Break;

   end;

end; { GetDBGridEdit }

function GetDBGridEditText(mDBGrid: TDBGrid): string;

var

 vEdit: TEdit;

begin

 vEdit := GetDBGridEdit(mDBGrid);

 if Assigned(vEdit) then

   Result := vEdit.Text

 else Result := '';

end; { GetDBGridEditText }

///////End Source

///////Begin Demo

procedure TForm1.DBGrid1Enter(Sender: TObject);

var

 vEdit: TEdit;

begin

 vEdit := GetDBGridEdit(TDBGrid(Sender));

 if Assigned(vEdit) then vEdit.Color := clYellow;

end;

procedure TForm1.DBGrid1KeyUp(Sender: TObject; var Key: Word;

 Shift: TShiftState);

begin

 Caption := GetDBGridEditText(TDBGrid(Sender));

end;

///////End Demo