ListView.OnCustomDrawItem事件
procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if (Item.Index mod 2) = 0 then
Sender.Canvas.Brush.Color := 背景色; //淡一点
end;
HDN_DIVIDERDBLCLICK:
begin
if not FHeaderTracking then
SetHeaderOwnerDraw(FHeaderOwnerDraw);
with PHDNotify(Pointer(Message.NMHdr))^ do
begin
Column[Item].Width :=ListView_GetColumnWidth(Handle, Item)+1;
if IsCustomDrawn(dtControl, cdPrePaint) then Invalidate;
end;
end;
NM_CUSTOMDRAW:
begin
with PNMCustomDraw(Message.NMHdr)^ do
begin
case dwDrawStage of
CDDS_PREPAINT: Message.Result := CDRF_NOTIFYITEMDRAW;
CDDS_ITEMPREPAINT:
begin
SetTextColor(hdc, clwhite);
SetBkColor(hdc, clskyblue);
Message.Result := CDRF_NEWFONT;
end;