如何使ListView中的第一条记录移动到最后一条? 同上 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 笨办法:先Add,copy第一条的各个属性然后delete第一条 已经解决。在这里有http://www.delphibbs.com/keylife/iblog_show.asp?xid=15773//这是个通用的过程procedure ListViewItemMoveUpDown(lv : TListView; Item : TListItem; MoveUp, SetFocus : Boolean);var DestItem : TListItem;begin if (Item = nil) or ((Item.Index - 1 < 0) and MoveUp) or ((Item.Index + 1 >= lv.Items.Count) and (not MoveUp)) then Exit; lv.Items.BeginUpdate; try if MoveUp then DestItem := lv.Items.Insert(Item.Index - 1) else DestItem := lv.Items.Insert(Item.Index + 2); DestItem.Assign(Item); lv.Selected := DestItem; Item.Free; finally lv.Items.EndUpdate; end; if SetFocus then lv.SetFocus; DestItem.MakeVisible(False);end;//此为调用过程,可以任意指定要移动的Item,下面是当前(Selected)Item ListViewItemMoveUpDown(ListView1, ListView1.Selected, True, True);//上移 ListViewItemMoveUpDown(ListView1, ListView1.Selected, False, True);//下移 奇怪的问题 高分求解决 打包需要什么文件 奇怪的PChar问题 DateTimePicker为什么部分数据不能编辑? 请教:DBGRID问题 fr_class.pas是什么东西? 怎样不能过继承而改写CreateParam中的参数 客户端的RECV(..)的Tsocket参数怎么设置的!!! 应聘DELPHI软件工程师 listview的底图问题 如何把一个pascal string 拷贝到一个array[0...19] of char中去? 求教DBChart饼图多个为0数据重叠问题
先Add,copy第一条的各个属性
然后delete第一条
http://www.delphibbs.com/keylife/iblog_show.asp?xid=15773
//这是个通用的过程
procedure ListViewItemMoveUpDown(lv : TListView; Item : TListItem; MoveUp, SetFocus : Boolean);
var
DestItem : TListItem;
begin
if (Item = nil) or
((Item.Index - 1 < 0) and MoveUp) or
((Item.Index + 1 >= lv.Items.Count) and (not MoveUp))
then Exit;
lv.Items.BeginUpdate;
try
if MoveUp then
DestItem := lv.Items.Insert(Item.Index - 1)
else
DestItem := lv.Items.Insert(Item.Index + 2);
DestItem.Assign(Item);
lv.Selected := DestItem;
Item.Free;
finally
lv.Items.EndUpdate;
end;
if SetFocus then lv.SetFocus;
DestItem.MakeVisible(False);
end;//此为调用过程,可以任意指定要移动的Item,下面是当前(Selected)Item
ListViewItemMoveUpDown(ListView1, ListView1.Selected, True, True);//上移
ListViewItemMoveUpDown(ListView1, ListView1.Selected, False, True);//下移