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

Вниз

Как изменить позицию элемена в TListView   Найти похожие ветки 

 
Zoidberg ©   (2006-01-07 14:55) [0]

Как можно изменить позицию элемента (строки) в TListView не используя сортировку?


 
raidan ©   (2006-01-07 18:25) [1]

Поменять местами эту строку с той, куда ты этот элемент хочешь поместить.


 
Zoidberg ©   (2006-01-07 19:10) [2]

А если я хочу переместить элемент из начала в конец, это нужно будет все элементы по порядку переписывать (включая Subitems)? А другого способа нет?


 
raidan ©   (2006-01-07 19:15) [3]

TListView - это динамический массив, если я чего не путаю.

Только так:
function MoveListViewItem(listView: TListView; ItemFrom, ItemTo: Word): Boolean;
var
  Source, Target: TListItem;
begin
  Result := False;
  listview.Items.BeginUpdate;
  try
    Source := listview.Items[ItemFrom];
    Target := listview.Items.Insert(ItemTo);
    Target.Assign(Source);
    Source.Free;
    Result := True;
  finally
    listview.Items.EndUpdate;
  end;
end;


 
Zoidberg ©   (2006-01-09 15:50) [4]

Спасбо, но это все равно не помогло.
Сначала вообще ничего не менялось, пока не изменил
Target := listview.Items.Insert(ItemTo);
на
Target := listview.Items.Insert(ItemTo + 1);
Потом все вроде заработала, но после нескольких таких переносов, программа вываливалась с ошибкой... Причину мне найти не удалось, решил все бросить, и сделать все же через сортировку.


 
Lamer@fools.ua ©   (2006-01-09 16:04) [5]

procedure TForm1.Button1Click(Sender: TObject);
var
 LI: TListItem;
begin
 if ListView1.Selected = nil then
   Exit;

 LI := ListView1.Items.Insert(0);
 LI.Assign(ListView1.Selected);
 ListView1.Items.Delete(ListView1.Selected.Index);
end;


?



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

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

Наверх




Память: 0.48 MB
Время: 0.093 c
1-1137400414
баклан
2006-01-16 11:33
2006.02.12
CHM Vs HelpFile :)


2-1138270311
Alex7
2006-01-26 13:11
2006.02.12
Функция Locate


5-1124351875
z0ne
2005-08-18 11:57
2006.02.12
Уничтожение компонентов


15-1137727459
Репортер
2006-01-20 06:24
2006.02.12
Отчеты с графикой и текстом


15-1137928997
Kerk
2006-01-22 14:23
2006.02.12
Google Books