mltdbgrd.pas
上传用户:fh681027
上传日期:2022-07-23
资源大小:1959k
文件大小:1k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1. unit mltdbgrd;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  5.   DB, DBTables, Grids, DBGrids, StdCtrls, ExtCtrls;
  6. type
  7.   TForm1 = class(TForm)
  8.     DBGrid1: TDBGrid;
  9.     DataSource1: TDataSource;
  10.     Table1: TTable;
  11.     Splitter1: TSplitter;
  12.     Panel1: TPanel;
  13.     ListBox1: TListBox;
  14.     Button1: TButton;
  15.     procedure Button1Click(Sender: TObject);
  16.   private
  17.     { Private declarations }
  18.   public
  19.     { Public declarations }
  20.   end;
  21. var
  22.   Form1: TForm1;
  23. implementation
  24. {$R *.DFM}
  25. procedure TForm1.Button1Click(Sender: TObject);
  26. var
  27.   I: Integer;
  28.   BookmarkList: TBookmarkList;
  29.   Bookmark: TBookmarkStr;
  30. begin
  31.   // store the current position
  32.   Bookmark := Table1.Bookmark;
  33.   try
  34.     // empty the listbox
  35.     ListBox1.Items.Clear;
  36.     // get the selected rows of the grid
  37.     BookmarkList := DbGrid1.SelectedRows;
  38.     for I := 0 to BookmarkList.Count - 1 do
  39.     begin
  40.       // for each, move the table to that record
  41.       Table1.Bookmark := BookmarkList[I];
  42.       // add the name field to the listbox
  43.       ListBox1.Items.Add (Table1.FieldByName (
  44.         'Name').AsString);
  45.     end;
  46.   finally
  47.     // go back to the initial record
  48.     Table1.Bookmark := Bookmark;
  49.   end;
  50. end;
  51. end.