窗体中有一stringgrid控件,有一imagelist控件(内有数张图片),如何在stringgrid控件的单元格中显示imagelist控件里的图片?

解决方案 »

  1.   

    从ImageList里面GetBitmap(),然后在OnDrawCell里面画就行了
      

  2.   

    在OnDrawCell事件中with StringGrid1.Canvas do
    Begin
      Draw(Rect.Left, Rect.Top, Image1.Picture.Graphic);
      r:=Rect;
      Font.Color:=clRed;
      Font.Size:=20;
      Brush.Style := bsClear;
      //TextOut(Rect.Left+20, Rect.Top+20,'XXX');
      s:='XXXXX';
      DrawText(Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER);end;
      

  3.   

    ondrawcell
    var
    a:TBitmap;
    begin
    a:=TBitmap.Create;
    ImageList1.GetBitmap(0,a);
    StringGrid1.Canvas.Draw(Rect.Left+2,Rect.Top+2,a);
    PS:根据COL和ROW你就可以决定在哪个单元格画了
      

  4.   

    没试过,不过AdvStringgrid能实现这个功能,有必要的话建议可以参考下源代码