图片显示(10分)

  • 主题发起人 主题发起人 aspxsky
  • 开始时间 开始时间
A

aspxsky

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure Tgb_k.TeThemeDBGrid1CellClick(Column: TColumn);
begin
try
if FileExists(dm.CDS_GB_01.fieldbyname('photo').asstring) then
image1.Picture.LoadFromFile(dm.CDS_GB_01.fieldbyname('photo').asstring);
except
ShowMessage('sorry,no picture');
end;
为什么我一打开这个窗体而不能显示图片
其它字段的资料都可以显示出来
是不是哪里有设错 请指教
 
我曾经用过

IMAGE 组件
使用方法为

VAR PATH:STRING;
BEGIN
PATH:='c:/windows/fisheryj.bmp';
image1.Picture.LoadFromFile(PATH);
END;
一般只能显示(*.bmp)图片



 
将图片放到程序所在的目录试一下。
 
给你一个函数试试:

Function GetImgFromDB(Fields:TField):boolean ; // Fields 是 TImage 类型字段
var jpeg: TJpegImage;
begin
try
try
jpeg:= TJpegImage.Create ;
jpeg.Assign(Fields);
img.Picture.Assign(jpeg);
except
end;
Finally
jpeg.Free ;
end;
end;
 
photo字段里面是图片路径
 
photo字段里面是图片路径
 
加上:image1.Refresh; 试试
 
为什么要我点一下 dbgrid 里面的记录后 哪图片才显示出来?
 
天!原来你问这个问题!你的程序写在了procedure Tgb_k.TeThemeDBGrid1CellClick这个事件里,你如果要一打开窗口就显示,你需要写在form1.show事件里。
 
写在DataSource的OnDataChange事件里试一试。
 
多人接受答案了。
 

Similar threads

后退
顶部