怎么取得正在 在 BGrid 输入的 内容

来源:互联网 发布:钢琴谱大全软件 编辑:程序博客网 时间:2024/06/15 23:06
 
(*//
标题
:处理数据网格的编辑框
说明
:示例添加焦点颜色 ; 获取还没有提交到数据集的字段文本
设计
:Zswang
日期:
2002-03-31
//*)
///////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
原创粉丝点击