stringgrid 显示imagelist里面的图片
解决思路:
把imagelist里面的图片通过getbitmap,保存到一个TBItMap变量中,然后利用stringgrid的canvas属性,draw到相应的cell当中。当然,代码要在stringgrid的onDrawCell事件中处理。
代码:
procedure TFrmMain.RzStringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var bitmap: TBitmap; begin bitmap := TBitmap.Create; try with RzStringGrid1 do begin ////添加判断条件,获取不同的bitmap显示
ilImages.GetBitmap(267, bitmap); if not bitmap.Empty then Canvas.Draw(Rect.Left, Rect.Top, bitmap); end; finally bitmap.Free; end; end;
代码很简单,主要就是getbitmap和canvas.draw的使用,注意TBitMap的创建和释放。
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。