如何在 TDrawGrid 的单元格中显示图片 - 回复 "巅枫" 的问题
2011-02-09 11:12
597 查看
问题来源: http://www.cnblogs.com/del/archive/2008/03/06/1094289.html#2023057
在 C:\Temp\ 下准备 1.bmp、2.bmp、3.bmp 三个图片, 然后:
在 C:\Temp\ 下准备 1.bmp、2.bmp、3.bmp 三个图片, 然后:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids; type TForm1 = class(TForm) DrawGrid1: TDrawGrid; procedure FormCreate(Sender: TObject); procedure DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); procedure FormDestroy(Sender: TObject); end; var Form1: TForm1; implementation {$R *.dfm} var bits: array[0..2] of TBitmap; procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin ChDir('c:\Temp\'); for i := Low(bits) to High(bits) do begin bits[i] := TBitmap.Create; bits[i].LoadFromFile(IntToStr(i+1) + '.bmp'); end; DrawGrid1.FixedRows := 0; DrawGrid1.FixedCols := 0; DrawGrid1.RowCount := 1; DrawGrid1.ColCount := 3; DrawGrid1.DefaultRowHeight := bits[0].Height; DrawGrid1.DefaultColWidth := bits[0].Width; end; procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var r: TRect; begin if (ARow = 0) and (ACol >= Low(bits)) and (ACol <= High(bits)) then begin r := Bounds(0, 0, bits[ACol].Width, bits[ACol].Height); //r := Bounds(0, 0, Rect.Right - Rect.Left, Rect.Bottom - Rect.Top); TDrawGrid(Sender).Canvas.CopyRect(Rect, bits[ACol].Canvas, r); end; end; procedure TForm1.FormDestroy(Sender: TObject); var i: Integer; begin for i := Low(bits) to High(bits) do bits[i].Free; end; end.
相关文章推荐
- 如何使用系统级热键捕捉当前窗口保存为 png 图片 - 回复 "巅枫" 的问题
- 如何把几张相同大小的图片拼合在 TImage 中 - 回复 "jxjjljf" 的问题
- 如何打开记事本并显示指定内容 - 回复 "苦苦苦" 的问题
- 如何在数据表中存取图片 - 回复 "三足乌" 的问题
- 如何用 GDI+ 高质量地缩放图片 - 回复 "程序牛" 的问题
- 如何用弹出窗口显示进度 - 回复 "嘿嘿嘿" 的问题
- 如何在数据表中存取图片 - 回复 "三足乌" 的问题
- 解析 png 图片的十六进制字符流的函数 - 回复 "黑人" 的问题
- 如何解决 "Powered by ECShop"每次显示的位置都不同的问题
- cocos2d-x如何解决图片显示模糊问题
- 不显示删除回复显示所有回复显示星级回复显示得分回复 如何简便地将一台机器上的oracle数据库迁移到另一台机器上[问题点数:100分]
- 下载并显示网上的图片之二(假如是 GIF 图片) - 回复 "fancy" 的问题
- 如何把一个字符串填充到一个无类型的指针 - 回复 "豪杰的爸爸" 的问题
- FileUpLoad选择图片后,直接将图片显示在image中。及IE8本地路径("C:/fakepath/")出现问题的解决方案
- 请问如何解决WORD转HTML是出现的“内存或磁盘空间不足,无法显示或打印图片”这个问题?
- 如何删除动态数组的指定元素 - 回复 "Splendour" 的部分问题
- 如何让 TGPImage 直接从流中加载图片? - 回复 "datouxuke " 的问题
- 如何解决php 生成验证码图片不显示问题
- 如何解决取消win7登录时显示“ctrl+alt+delete"的问题
- 不显示删除回复显示所有回复显示星级回复显示得分回复 触发器问题:如何记录被修改的多行纪录的关键字的原值和新值?