在ListView中加入
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
lov bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd这里的lov不知道是在哪一行会出现.如何得到lov的行号呢?
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
lov bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd
aaa bbb ccc ddd这里的lov不知道是在哪一行会出现.如何得到lov的行号呢?
begin
if ListView.Item[i].caption = 'love' then
do sthend;
如果性能要求严格的话,用HashTable处理。
遍历整个ListView的话.数据多了,会有些慢!
Listview.item.count
那么再添加love这行的时候,它就是Listview.item.count+1了
iRow := Items.Index;其中iRow就是行号了.我忘记了ListView中的重绘事件是那个了。好像是DrawItem那个。你找找吧。
procedure TForm1.ListView1CustomDrawItem(
Sender: TCustomListView; Item: TListItem; State: TCustomDrawState;
var DefaultDraw: Boolean);
var
iRow:Integer; //如果要在其他地方使用,最好是定义成全局变量 ,要不没用。
begin
if Item.Caption = 'lov' then //此如果是列的话就这样写Item.SubItem[列号]就可以了。
iRow := Item.Index;
end;