ورود

View Full Version : درج رکورد اطلاعات از طریق DBGrid



Mahdi_S_T
جمعه 06 آذر 1383, 10:47 صبح
چگونه می شود با استفاده از یک DBGrid اطلاعات را مستقیما از روی سلولهای آن وارد کرد یعنی سلول اول را وارد نماییم و سپس با زدن اینتر به سلول بعدی برود و الی آخر و در ضمن در هنگام اینتر زدن اطلاعات وارد شده در هر سلول چک شود

vcldeveloper
شنبه 07 آذر 1383, 04:34 صبح
procedure TForm1.DBGrid1KeyPress (Sender: TObject; var Key: Char);
begin
If Key = #13 Then Begin
If HiWord(GetKeyState(VK_SHIFT)) <> 0 then begin
with (Sender as TDBGrid) do
if selectedindex > 0 then
selectedindex := selectedindex - 1
else begin
DataSource.DataSet.Prior;
selectedindex := fieldcount - 1;
end;
end else begin
with (Sender as TDBGrid) do
if selectedindex < (fieldcount - 1) then
selectedindex := selectedindex + 1
else begin
DataSource.DataSet.Next;
selectedindex := 0;
end;
end;
Key := #0
end;
end;



برای چک کردن اطلاعات وارد در شده در هر سلول بعد از زدن Enter هم می تونی یا توی همین کد بالا کدت رو بنویسی یا توی OnColExit