我想编一个简单的图像查询并显示程序,下面是代码,各位大虾帮我看看错在那里怎么改.感激!
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, ExtCtrls,jpeg;
type
TForm1 = class(TForm)
Image1: TImage;
Edit1: TEdit;
Button1: TButton;
ADOQuery1: TADOQuery;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;implementation{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
edit1.text:='';
end;
procedure TForm1.Button1Click(Sender: TObject);var
mStream: TMemoryStream;
JpgFile: TjpegImage;
bmpfile: Tbitmap;
begin
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('select * from 2009 where 姓名 like :姓名');
Parameters.ParamByName('姓名').value := edit1.text;
open;
try
if not adoquery1.FieldByName('touxiang').IsNull then
begin
mstream:=tmemorystream.Create;
jpgfile:=tjpegimage.Create;
bmpfile:=tbitmap.Create;
Tblobfield(adoquery1.FieldByName('touxiang')).SaveToStream(mstream);
mstream.Position:=0;
if (adoquery1.FieldValues['extm'] = '.jpeg') then
begin
mstream.Position:=0;
jpgfile.LoadFromStream(mstream);
image1.Picture.Assign(jpgfile);
end;
end
else
//if uppercase(checkpicformat(mstream))='BMP' then
begin
mstream.Position:=0;
bmpfile.LoadFromStream(mstream);
image1.Picture.Assign(bmpfile);
end ;
end
else
image1.Picture:=nil;
finally
//jpgfile.Free;
//bmpfile.Free;
FreeAndNil(jpgfile);
FreeAndNil(bmpfile);
end;
end.
这是收到的错误提示
[Error] Unit1.pas(65): EXCEPT or FINALLY expected
[Error] Unit1.pas(66): 'END' expected but 'ELSE' found
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, ExtCtrls,jpeg;
type
TForm1 = class(TForm)
Image1: TImage;
Edit1: TEdit;
Button1: TButton;
ADOQuery1: TADOQuery;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;implementation{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
edit1.text:='';
end;
procedure TForm1.Button1Click(Sender: TObject);var
mStream: TMemoryStream;
JpgFile: TjpegImage;
bmpfile: Tbitmap;
begin
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('select * from 2009 where 姓名 like :姓名');
Parameters.ParamByName('姓名').value := edit1.text;
open;
try
if not adoquery1.FieldByName('touxiang').IsNull then
begin
mstream:=tmemorystream.Create;
jpgfile:=tjpegimage.Create;
bmpfile:=tbitmap.Create;
Tblobfield(adoquery1.FieldByName('touxiang')).SaveToStream(mstream);
mstream.Position:=0;
if (adoquery1.FieldValues['extm'] = '.jpeg') then
begin
mstream.Position:=0;
jpgfile.LoadFromStream(mstream);
image1.Picture.Assign(jpgfile);
end;
end
else
//if uppercase(checkpicformat(mstream))='BMP' then
begin
mstream.Position:=0;
bmpfile.LoadFromStream(mstream);
image1.Picture.Assign(bmpfile);
end ;
end
else
image1.Picture:=nil;
finally
//jpgfile.Free;
//bmpfile.Free;
FreeAndNil(jpgfile);
FreeAndNil(bmpfile);
end;
end.
这是收到的错误提示
[Error] Unit1.pas(65): EXCEPT or FINALLY expected
[Error] Unit1.pas(66): 'END' expected but 'ELSE' found
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货