15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Как поменять местами элементы ListView.

Компилятор: C++ Builder

Пример демонстрирует, как поменять местами элементы ListView без мерцания:

//---------------------------------------------------------------------------
//исходник...

void __fastcall TForm1::SwapLVItems(int a, int b)
{
   int New;
   ListView1->Items->BeginUpdate();
   {
      ListView1->Items->Add();
      New = ListView1->Items->Count - 1;
      ListView1->Items->Item[New] = ListView1->Items->Item[a];
      ListView1->Items->Item[a] =   ListView1->Items->Item[b];
      ListView1->Items->Item[b] = ListView1->Items->Item[New];
      ListView1->Items->Delete(New);
   }
   ListView1->Items->EndUpdate();