Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.25;
Скачать: CL | DM;

Вниз

Мастера вот в статьях есть пример DragDrop для ListViw   Найти похожие ветки 

 
Vt   (2003-08-11 08:09) [0]

я его немного изменил так как нужно вести перенос только
в один ListViw
Начну с кода
procedure TForm1.ListView1DragDrop(Sender, Source: TObject; X, Y: Integer);
var
Item, CurItem: TListItem;
begin
CurItem := ListView1.Selected;
Item := ListView1.GetItemAt(x, y);
if Item <> nil then
Item := ListView1.Items.Insert(Item.Index)
else
Item := ListView1.Items.Add;
Item.Assign(CurItem);
CurItem.Free;
end;

//Здесь заперетил перенос если итемов менее 2
procedure TForm1.ListView1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
If ListView1.Items.Count<2 Then Accept:=False;
end;
Вопрос в том что этот код в моем случае не работает
например беру любую строку тащу а она все время добавляется во вторую строчку, после добавления перенос вообще не работает, чтобы не изобретать велосипед подскажите где я маху дал или может есть пример.


 
Vt   (2003-08-11 09:18) [1]

Уточню
после добавления перенос вообще не работает
работает.

например беру любую (последнюю меняю с предпоследней)строку тащу а она все время добавляется во вторую строчку из-за Item.Assign(CurItem);


 
Vt   (2003-08-11 09:51) [2]

Вообщето я написал обработчик DragDrop простой сменой Caption,ImageIndex и величин Чекетов, но все же хотелось услышать мнение мастеров почему код выше не работает.


 
Семен Сорокин ©   (2003-08-11 10:28) [3]

2Vt
так ты присваивай объект на OnDragOver, а не на OnDragDrop.

procedure TForm1.ListView1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
var
Item, CurItem: TListItem;
begin
Accept := ListView1.Items.Count>1;
if Accept then begin
CurItem := ListView1.Selected;
Item := ListView1.GetItemAt(x, y);
if Assigned(Item) then
Item := ListView1.Items.Insert(Item.Index)
else
Item := ListView1.Items.Add;
Item.Assign(CurItem);
CurItem.Free
end
end;



Страницы: 1 вся ветка

Текущий архив: 2003.08.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
3-81535
kserg
2003-07-25 18:51
2003.08.25
вопрос по MS SQL-серверу


4-82021
SH
2003-06-03 16:56
2003.08.25
Drag&Drop and TTreeView


7-81990
BJValentine
2003-06-10 19:17
2003.08.25
Событие от COM порта


14-81925
Dimich1978
2003-08-07 11:58
2003.08.25
посмотрите


1-81769
Всеволод Соловьёв
2003-08-14 10:34
2003.08.25
Интерфейсы