برنامه نویس

به وبلاگ خودتان خوش آمدید.

برنامه نویس

به وبلاگ خودتان خوش آمدید.

انتخاب چندین رکورد از dbgrid در دلفی

procedure TForm1.Button3Click(Sender: TObject);

begin
  if dbgrid1.SelectedRows.CurrentRowSelected then  //check
  begin
    ShowMessage('This Record was selected');
    dbgrid1.SelectedRows.CurrentRowSelected := False; //Unselect
  end
  else
  begin
    ShowMessage('This Record was not selected');
    dbgrid1.SelectedRows.CurrentRowSelected := True;//select
  end;
end;



procedure TForm1.Button4Click(Sender: TObject);
var I : Integer;
begin
  for i := 0 to dbgrid1.SelectedRows.Count - 1 do
  begin
    dbgrid1.DataSource.Dataset.GotoBookmark(TBookmark(dbgrid1.SelectedRows[i]));
    //Do Something
    ShowMessage(dbgrid1.DataSource.Dataset.Fields[0].AsString);
  end;
end;

برای انتخاب چندین رکورد از کد زیر میشود استفاده کرد
با ید انتخاب ردیف و انتخاب چندین ردیف فعال باشد
DBGrid1.Options:=DBGrid1.Options + [dgMultiSelect,dgRowSelect]

if (Shift = []) then

  begin

    case Key of

    VK_UP: begin

             Key := 0;

             TDBGrid(Sender).DataSource.DataSet.Prior;

           end;

    VK_Down: begin

               Key := 0;

               TDBGrid(Sender).DataSource.DataSet.Next;

             end;

    VK_Space: begin

                Key := 0;

                TDBGrid(Sender).SelectedRows.CurrentRowSelected :=

       NOT(TDBGrid(Sender).SelectedRows.CurrentRowSelected);

              end;

    end;

  end;

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد