数据库存放图片的路径,然后在dbgrid 显示出来。正列的图片griddbgrid图片显示delphi数据库

解决方案 »

  1.   

    procedure TForm11.dbgrd1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
      procedure jpg;
      var
        jpeg : TWICImage;
      begin
        jpeg := TWICImage.Create;
        try
          jpeg.LoadFromFile(Column.Field.AsString);  //Column.Field.AsString  存放图片路径
          dbgrd1.Canvas.StretchDraw(Rect,jpeg);
          jpeg.Free;
        Except on e : exception do
          begin
            mmo1.Lines.Add(e.message);
            jpeg.Free;
          end;
        end;
      end;
    //var
    //  Bmp: TBitmap;      //只能识别bmp图片
    //  jpeg : TWICImage;
    begin
      if Column.FieldName = 'col2' then  //图片路径列  默认此列显示图片
      begin
        jpg;
      end;  {//Delphi自带的grid加图片需要自己完成部分工作, 展示效果也不太好
      图片过大会出现晃动, 行高等设置也得配合, 否则显示会产生缩放  //行高设置语句如下 在窗体show,或create时调用
        TStringGrid(dbgrd1).DefaultRowHeight := 130  }
    end;