gpt4 book ai didi

delphi - 如何在Delphi的TListView子项上绘制bmp/图标?

转载 作者:行者123 更新时间:2023-12-03 19:06:02 26 4
gpt4 key购买 nike

我想使用delphi将图标/ bmp绘制到TListView的子项中。但是我不知道该怎么做到。它适用于列表中的第一项,但子项存在问题。

最佳答案

您可以使用CustomDrawSubItem事件。

下面的示例将忽略文本并绘制​​矩形。不幸的是,获取右侧列的矩形有点麻烦,但是这种方法有效:

procedure TForm.ListViewCustomDrawSubItem(Sender: TCustomListView;
Item: TListItem; SubItem: Integer; State: TCustomDrawState;
var DefaultDraw: Boolean);
var
r : TRect;
i : Integer;
begin
r := Item.DisplayRect(drBounds);
for i := 0 to SubItem-1 do begin
r.Left := r.Left + ListView.Columns.Items[i].Width;
r.Right := r.Left + ListView.Columns.Items[i+1].Width;
end;
case SubItem of
1 : ListView.Canvas.Pen.Color := clRed;
else
ListView.Canvas.Pen.Color := clBlue;
end;

ListView.Canvas.Rectangle(r.Left, r.Top, r.Right, r.Bottom);
DefaultDraw := False;
end;

关于delphi - 如何在Delphi的TListView子项上绘制bmp/图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/710242/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com