这是一个例子的源代码:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, DBCtrls, Mask, StdCtrls, Db, DBTables, ExtDlgs, Buttons,
ComCtrls;
type
TForm1 = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Panel1: TPanel;
DBEdit1: TDBEdit;
DBImage1: TDBImage;
StaticText1: TStaticText;
StaticText2: TStaticText;
Panel2: TPanel;
Image1: TImage;
Edit1: TEdit;
StaticText3: TStaticText;
StaticText4: TStaticText;
SpeedButton1: TSpeedButton;
OpenPictureDialog1: TOpenPictureDialog;
SpeedButton2: TSpeedButton;
DBNavigator1: TDBNavigator;
SpeedButton3: TSpeedButton;
StaticText5: TStaticText;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
if openpicturedialog1.execute then
begin
image1.picture.loadfromfile(openpicturedialog1.filename);
edit1.text:=openpicturedialog1.filename;
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
Picture1:TPicture;
begin
Picture1:=TPicture.create;
try
try
if fileexists(edit1.text) then
with table1 do
begin
Picture1.LoadFromFile(edit1.text);
if findkey([extractfilename(edit1.text)])=false then
begin
indexfieldnames:='name';
table1.Insert;
Fields[0].AsString:=extractfilename(edit1.text);
Fields[1].Assign(Picture1);
Post;
showmessage('图象保存成功!');
end
else
showmessage('图象已经存在!');
end;
finally
Picture1.Free;
end;
except
showmessage('图象保存失败!');
end;
end;
procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
table1.active:=true;
end;
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
begin
StaticText5.caption:=inttostr(table1.RecNo)+'/'+inttostr(table1.RecordCount);
end;
end.