访问文件夹里的图片???(0分)

  • 主题发起人 主题发起人 huanghuoniu
  • 开始时间 开始时间
H

huanghuoniu

Unregistered / Unconfirmed
GUEST, unregistred user!
楼主: unit adminpic;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons, DB, ADODB;

type
TadminpicForm = class(TForm)
Memo1: TMemo;
ScrollBox1: TScrollBox;
Panel1: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
Image1: TImage;
ADOQuery1: TADOQuery;
Label1: TLabel;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
procedure FormShow(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure SpeedButton6Click(Sender: TObject);
private
{ Private declarations }
public
i:integer;
{ Public declarations }
end;

var
adminpicForm: TadminpicForm;

implementation
uses adminbuilding,main;

{$R *.dfm}

procedure TadminpicForm.FormShow(Sender: TObject);

begin
i:=1;
adoquery1.Close;
adoquery1.SQL.Clear;

adoquery1.SQL.Add('select * from adminfloor where (校区='''+adminbuildingform.strxiao+''')and (建筑名称='''+adminbuildingform.strname+''')');
adoquery1.Open;
adoquery1.First;
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'/data/adminpic/'+adoquery1.FieldByName('图片名称').AsString+'.jpg');

label1.Caption:=adoquery1.FieldByName('建筑名称').AsString+inttostr(i)+'层平面图';
end;

procedure TadminpicForm.SpeedButton1Click(Sender: TObject);
begin
try
i:=1;
adoquery1.First;
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'/data/adminpic/'+adoquery1.FieldByName('图片名称').AsString+'.jpg');
label1.Caption:=adoquery1.FieldByName('建筑名称').AsString+inttostr(i)+'层平面图';
except
on Exception do
messagebox(handle,'数据缺乏','对不起!',MB_ICONQUESTION);
end;
end;

procedure TadminpicForm.SpeedButton2Click(Sender: TObject);
begin
if i<adoquery1.RecordCount then
begin
i:=i+1;
adoquery1.Next;
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'/data/adminpic/'+adoquery1.FieldByName('图片名称').AsString+'.jpg');
label1.Caption:=adoquery1.FieldByName('建筑名称').AsString+inttostr(i)+'层平面图';
end;

end;

procedure TadminpicForm.SpeedButton3Click(Sender: TObject);
begin
if i>1 then
begin
i:=i-1;
adoquery1.Prior;
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'/data/adminpic/'+adoquery1.FieldByName('图片名称').AsString+'.jpg');
label1.Caption:=adoquery1.FieldByName('建筑名称').AsString+inttostr(i)+'层平面图';
end;


end;

procedure TadminpicForm.SpeedButton4Click(Sender: TObject);
begin

i:=adoquery1.RecordCount;
adoquery1.Last;
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'/data/adminpic/'+adoquery1.FieldByName('图片名称').AsString+'.jpg');
label1.Caption:=adoquery1.FieldByName('建筑名称').AsString+inttostr(adoquery1.RecordCount)+'层平面图';
end;

procedure TadminpicForm.SpeedButton5Click(Sender: TObject);
begin
adoquery1.Active:=false;
close;
end;

procedure TadminpicForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
adoquery1.Active:=false;
close;
end;

procedure TadminpicForm.SpeedButton6Click(Sender: TObject);
begin
// try
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from adminbuilding where (校区='''+adminbuildingform.strxiao+''')and (图片名称='''+adminbuildingform.strname+''')');
adoquery1.Open;
adoquery1.First;
Image1.Picture.LoadFromFile(ExtractFilePath(Application.ExeName)+'/data/adminbuildingpic/'+adoquery1.FieldByName('图片名称').AsString+'.jpg');

// except
// on Exception do
// messagebox(handle,'数据缺乏','对不起!',MB_ICONQUESTION);
//end;
end;

end.
问题说明:
1、窗口见附件
2、该程序在没有加 照片(speedbutton6)是运行正常可以达到预期的效果,即点即 第一层 是显示该层的jpg图片。
3、我加上 照片(speedbutton6)是想在点击照片(speedbutton6)之后显示该楼的照片。每栋楼房的图片名称在adminbuilding表的 图片名称 字段里面。
每栋楼的图片放在/data/adminbuildingpic文件夹里面。图片的命名就是 表adminbuilding图片名称 字段的名字。
现在的问题:
运行之后,如果我不点击图片按钮一切运行正常。
当我点击图片按钮之后相应的照片显示在image1里面,但是再点击 第一层 下一层 上一层 最后一层这几个按钮是提示找不到图片。
 
产业楼.img]
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
592
import
I
S
回复
0
查看
610
SUNSTONE的Delphi笔记
S
后退
顶部