我用的是insert方法啊
procedure TfrmMain.FormCreate(Sender: TObject);
var
i: integer;
GroupList: TStringList;
ListItem: TListItem;
pt: TPoint;
begin
DragAcceptFiles(Handle, True); for i := 1 to 10 do
begin
ListItem := lv1.Items.Add;
ListItem.ImageIndex := i;
pt := ListItem.Position;
ListItem.Caption := Format('x:%d,y:%d', [pt.X, pt.Y]);
end;
end;procedure TfrmMain.DragDropFiles(var message: TMessage);
var
FileName: array[0..MAX_PATH] of char;
n: word;
i, index: Integer;
pt: TPoint;
FileInfo: TSHFileInfo;
hc: TIcon;
Bitmap: TBitmap;
begin
inherited;
try
// 获得拖拉的文件数目,该功能由第二个参数决定
n := DragQueryFile(message.WParam, $FFFFFFFF, nil, 0);
GetCursorPos(pt);
pt := ScreenToClient(pt);
index := GetListViewIndex(pt);
SendInteger('index',index);
for i:=0 to n-1 do
begin
DragQueryFile(message.WParam, i, FileName, SizeOf(FileName));
FileInfo.iIcon := 0;
SHGetFileInfo(FileName, 0, FileInfo, SizeOf(TSHFileInfo),
SHGFI_ICON or SHGFI_LARGEICON);
hc := TIcon.Create;
hc.Handle := FileInfo.hIcon;
with lv1.Items.Insert(index) do
begin
ImageIndex := il1.AddIcon(hc);
Caption := ExtractFileName(FileName);
end;
hc.Free;
end;
finally
DragFinish(message.WParam);
end;
end;
procedure TfrmMain.FormCreate(Sender: TObject);
var
i: integer;
GroupList: TStringList;
ListItem: TListItem;
pt: TPoint;
begin
DragAcceptFiles(Handle, True); for i := 1 to 10 do
begin
ListItem := lv1.Items.Add;
ListItem.ImageIndex := i;
pt := ListItem.Position;
ListItem.Caption := Format('x:%d,y:%d', [pt.X, pt.Y]);
end;
end;procedure TfrmMain.DragDropFiles(var message: TMessage);
var
FileName: array[0..MAX_PATH] of char;
n: word;
i, index: Integer;
pt: TPoint;
FileInfo: TSHFileInfo;
hc: TIcon;
Bitmap: TBitmap;
begin
inherited;
try
// 获得拖拉的文件数目,该功能由第二个参数决定
n := DragQueryFile(message.WParam, $FFFFFFFF, nil, 0);
GetCursorPos(pt);
pt := ScreenToClient(pt);
index := GetListViewIndex(pt);
SendInteger('index',index);
for i:=0 to n-1 do
begin
DragQueryFile(message.WParam, i, FileName, SizeOf(FileName));
FileInfo.iIcon := 0;
SHGetFileInfo(FileName, 0, FileInfo, SizeOf(TSHFileInfo),
SHGFI_ICON or SHGFI_LARGEICON);
hc := TIcon.Create;
hc.Handle := FileInfo.hIcon;
with lv1.Items.Insert(index) do
begin
ImageIndex := il1.AddIcon(hc);
Caption := ExtractFileName(FileName);
end;
hc.Free;
end;
finally
DragFinish(message.WParam);
end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货