我用delphi做的一个软件,和SQL相连的,SQL里存了图片,假设序号是1,2,3。
和SQL是用ADOConnection ADOTable DATASource连的
有5个image控件(image1,image2....),要把SQL里的1,2,3相对应的读取到5个image里
1—image1,2—image2..... 
应该怎么做,听朋友说可以用循环语句实现,但应该怎么写,可以说一下吗?

解决方案 »

  1.   

    用DBImage容易多了,直接关联到1,2,3就可以了
      

  2.   

    没错
    用流操作
    var
      FileSource : Tstream;
    with adoquery1 do
    begin
     close;
     sql.Clear;
     sql.Add('select * from ...');
     adoquery1.Open;
    FileSource:=CreateBlobStream(FieldbyName('...'),bmRead);
    image1.Picture.Bitmap.LoadFromStream(filesource);
    上面的是读取一个图片的,再加一个循环就可以了
      

  3.   

    谢谢各位给我意见,但用DBImage会有个边框,我要显示的是一些图标文件,有框架的尽量不要,DBImage可以把边框去掉吗?如果可以那到也可以用。 ———————————
    |  1   2  3  4  5  6  |
    |  7   8  9  10 11 12 |
    |......               |
     ———————————
    SQL数据库里存的图片读入相应的位置,
      

  4.   

    边框??
    borderstyle设置为bsnone不就行了
      

  5.   

    其实你还可以用HOTSPORTIMAGE这个三方控件