我想编一个简单的图像查询并显示程序,下面是代码,各位大虾帮我看看错在那里怎么改.感激!
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'
解决方案 »
- 动态创建控件问题,不能定位父控件,不明啊?
- 菜鸟求助!!如何去日期中的年月日!简单点的!谢谢了!
- DBNavigator
- 有什么办法可以通过,光标来判断目前光标所在的句柄?
- 有关group分组的问题!!!
- 刚刚学习,请问在Delphi中怎么定义过程或函数
- delphi里自己写的procedure和function要怎么声明一下才可以用呀?
- 关于Combobox的基本操作方法
- 旧问重发:fieldvalues fieldbyname 判断的疑问
- 请教数据库高手:用三层数据库结构是否能够实现数据的异地传送?
- delphi的dll中自定义的类如何在调用程序中实例化?
- 关于delphi2007的一个简单问题!!
begin
mstream.Position:=0;
jpgfile.LoadFromStream(mstream);
image1.Picture.Assign(jpgfile);
// end; // 这里多了一个end
end