delphi 在ListView控件中绘底图


本文整理自网络,侵删。

 ListView控件是Windows程序开发中的常用控件, 利用它可以把需要用户进行选择操作的多个项目在窗口中以列表的方式显示, 每一个项目可以有它的小图标和大图标, 从而可以改善程序的用户界面, 方便用户操作.

  ---- 为了使程序的界面更美观, 我们还可以在ListView控件中绘制底图, 正如我们可以为窗口绘制底图一样. 在Delphi中, 为ListView控件绘制底图是非常容易的, 它为我们提供有OnCustomDraw事件, 专门用于处理用户自定义的绘制, 在该事件中编写程序, 可以在绘制ListView的各个项目之前, 先执行该事件程序在ListView的画布(Canvas)上绘制我们自己的图形.   

  ---- 下面是在ListView控件中绘底图的一个小程序.

  ---- 源程序如下:   

  unit ListViewMain;

  interface

  uses

  Windows, Messages, SysUtils, Classes, Graphics,

   Controls, Forms, Dialogs,

   ComCtrls, ImgList;

  type

   TForm1 = class(TForm)

   ListView1: TListView;

   ImageList1: TImageList;

  procedure ListView1CustomDraw(Sender:

   TCustomListView;

   const ARect: TRect; var DefaultDraw:

   Boolean);

   procedure FormCreate(Sender: TObject);

  procedure FormClose(Sender: TObject;

  var Action: TCloseAction);

   private

   { Private declarations }

   public

   { Public declarations }

   end;

  var

   Form1: TForm1;

   Bitmap1: TBitmap;

  implementation

  {$R *.DFM}  

  procedure TForm1.ListView1CustomDraw(Sender:

  TCustomListView;

   const ARect: TRect; var DefaultDraw: Boolean);

  var

   x,y,w,h : LongInt;

  begin

   with Bitmap1 do begin

   W := Width;

   H := Height;

   end;

   Y := 0;

   while Y < Height do begin

   X := 0;

   while X < Width do begin

   ListView1.Canvas.Draw(X, Y, Bitmap1);

   Inc(X, W);

   end;

   Inc(Y, H);

   end;

  end;

  procedure TForm1.FormCreate(Sender: TObject);

  begin

   Bitmap1 := TBitmap.Create;

   Bitmap1.LoadFromFile('backgray.bmp');

  end;

  procedure TForm1.FormClose(Sender: TObject;

   var Action: TCloseAction);

  begin

   Bitmap1.Free;

  end; 

  end.

相关阅读 >>

Delphi program name、process id、window handle、process handle 的转换函数

Delphi 如何在tmemo,tedit或trichedit中获得插入符的位置

Delphi xe(indy10)tidbytes转ansistring的实现

Delphi 倒计时源码

一些不常用的且功能相当有用的Delphi函数

字符串提取算法

Delphi 优盘背景生成器源码

Delphi输入字符与tlistbox项目匹配

Delphi 得到ip三个值

Delphi 中 image 控件加载bmp、jpg、gif、png等图片的办法

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...