如何在Grid中使用回车键...(50分)

  • 主题发起人 主题发起人 jack2000
  • 开始时间 开始时间
J

jack2000

Unregistered / Unconfirmed
GUEST, unregistred user!
在Grid中按回车键到下一个字段,当到某一字段时(不是最后字段)时后面的字段不再
接受焦点,转到下一个记录如果是最后一个记录自动增加一个记录,并焦点在第一个字段。
 
在Grid1KeyPress事件中添加以下代码:

begin
if Key=#13 then
if not(ActiveControl is TwwDBGrid) then
begin
Key:=#0;
Perform(WM_NEXTDLGCTL,0,0);
end else
if (ActiveControl is TwwDBGrid) then with TwwDBGrid(ActiveControl) do
if SelectedIndex < 某一字段的索引号即第几列 then selectedindex:=selectedindex+1 else
begin
(Sender as TwwDBGrid).DataSource.DataSet.Next;
if (Sender as TwwDBGrid).DataSource.DataSet.Eof then
(Sender as TwwDBGrid).DataSource.DataSet.Append;
selectedindex:=0;
end;
end;
 
在Grid1KeyPress事件中添加以下代码:

begin
if Key=#13 then
if not(ActiveControl is TwwDBGrid) then
begin
Key:=#0;
Perform(WM_NEXTDLGCTL,0,0);
end else
if (ActiveControl is TwwDBGrid) then with TwwDBGrid(ActiveControl) do
if SelectedIndex < 某一字段的索引号即第几列 then selectedindex:=selectedindex+1 else
begin
(Sender as TwwDBGrid).DataSource.DataSet.Next;
selectedindex:=0; //应增加此句,否则焦点无法到第一个字段
if (Sender as TwwDBGrid).DataSource.DataSet.Eof then
(Sender as TwwDBGrid).DataSource.DataSet.Append;
selectedindex:=0;
end;
end;
 
后退
顶部