///////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