给LISTVIEW加背景图

来源:互联网 发布:mac查找文件夹 编辑:程序博客网 时间:2024/06/10 05:53

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, commctrl, ImgList;

type
  TForm1 = class(TForm)
    ListView1: TListView;
    ImageList1: TImageList;
    procedure ListView1CustomDraw(Sender: TCustomListView;
      const ARect: TRect; var DefaultDraw: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure ListView1Resize(Sender: TObject);
  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: LongInt;
begin
  x := self.Width - bitmap1.Width;
  y := self.Height - bitmap1.Height;
  self.Caption := inttostr(form1.Width) + ',' + inttostr(x);
  listview1.Canvas.Draw(x, y, bitmap1);
  SetBkMode(listview1.Canvas.Handle,TRANSPARENT);
  ListView_SetTextBKColor(listview1.Handle,CLR_NONE);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Bitmap1 := TBitmap.Create;
  Bitmap1.LoadFromFile('backgray.bmp');
  listview1.Align := alclient;
  listview1.DoubleBuffered := true;
  ShowScrollBar(listview1.Handle, SB_BOTH ,false);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  Bitmap1.Free;
end;

procedure TForm1.ListView1Resize(Sender: TObject);
begin
  listview1.Invalidate;
end;

end.

原创粉丝点击