Procedure TForm1.DBGrid1KeyPress(Sender: TObject; Var Key: Char); Begin If Key = #9 Then perform(WM_NEXTDLGCTL, 0, 0); End;
Procedure TForm1.DBGrid1KeyPress(Sender: TObject; Var Key: Char); Begin 控件名.setfocus; End;
Procedure TForm1.DBGrid1KeyPress(Sender: TObject; Var Key: Char); Begin If (Key = #9) and (DBGrid1.ColIndex=DBGrid1.Columns.Count-1) Then begin perform(WM_NEXTDLGCTL, 0, 0); 或 DBEdit1.SetFocus; end; End;
Procedure TForm1.DBGrid1KeyPress(Sender: TObject; Var Key: Char); Begin 控件名.setfocus; End; 这样做的话,那我还想在DBGrid中选择了某一条记录后,打回车键就能做一些事情,那不能完成了吧。Procedure TForm1.DBGrid1KeyPress(Sender: TObject; Var Key: Char); Begin If Key = #9 Then perform(WM_NEXTDLGCTL, 0, 0); End; 这样做的话,当我从编辑框按TAB键切换到DBGrid中时,DBGrid那永远也得不到焦点呀,那我怎样用上下键选择其中的某一条记录呢? 哪位还有办法?谢谢。
Begin
If Key = #9 Then
perform(WM_NEXTDLGCTL, 0, 0);
End;
Begin
控件名.setfocus;
End;
Begin
If (Key = #9)
and (DBGrid1.ColIndex=DBGrid1.Columns.Count-1) Then
begin
perform(WM_NEXTDLGCTL, 0, 0);
或 DBEdit1.SetFocus;
end;
End;
Begin
控件名.setfocus;
End;
这样做的话,那我还想在DBGrid中选择了某一条记录后,打回车键就能做一些事情,那不能完成了吧。Procedure TForm1.DBGrid1KeyPress(Sender: TObject; Var Key: Char);
Begin
If Key = #9 Then
perform(WM_NEXTDLGCTL, 0, 0);
End;
这样做的话,当我从编辑框按TAB键切换到DBGrid中时,DBGrid那永远也得不到焦点呀,那我怎样用上下键选择其中的某一条记录呢?
哪位还有办法?谢谢。