我只需要在 ListView 中的行高添加2px :)(自定义绘制的进度栏现在太窄了)。
有两个好的答案Change Listview item height,http://www.delphipages.com/forum/showthread.php?t=49939,但是我做不到。
我知道可以处理一张图片列表,但是我已经有16x16张图片了:)
有谁能够帮我?
我会感激的。
最佳答案
响应CN_MEASUREITEM
控制通知消息,如下所示:
type
TListView = class(ComCtrls.TListView)
private
procedure CNMeasureItem(var Message: TWMMeasureItem); message CN_MEASUREITEM;
end;
TForm1 = class(TForm)
...
procedure TListView.CNMeasureItem(var Message: TWMMeasureItem);
begin
inherited;
Inc(Message.MeasureItemStruct.itemHeight, 2);
end;
注意:仅当
OwnerDraw
属性为true时,才发送此消息。