Перейти к содержанию
Fire Monkey от А до Я
  • 0

ошибка при удаление ListViewItem


Erlan_krg

Вопрос

Всем привет! Встретился с одной проблемой. Удаляю Item у ListView по нажатию кнопки, которая находится на ListViewItem

procedure TfmAppointment.lvSelectedServicesButtonClick(const Sender: TObject;
  const AItem: TListItem; const AObject: TListItemSimpleControl);
begin
    lvSelectedServices.BeginUpdate;
    if lvSelectedServices.ItemCount > 0 then
        lvSelectedServices.Items.Delete(AItem.Index);
    lvSelectedServices.EndUpdate;
end;

итем удаляется, но потом выскакивает ошибка Access violation at address 60BCB318 и то се бо се

 

у ListView ItemAppearance выставлен на DynamicAppearance

помимо родного объекта Text добавил еще один объект Text и кнопку

 

но фишка в чем, если убрать дополнительный объект Text с ListWiewItem и удалить итем то ошибка не выскакивает)

 

что за прикол?

Ссылка на комментарий

Рекомендуемые сообщения

  • 1

нельзя удалять себя из обработчика себя

нужно запустить

TTask.Run(procedure begin TThread.Synchronize(procedure begin ваше действие с компонентом end) end);

Ссылка на комментарий
  • 0
18 минут назад, krapotkin сказал:

нельзя удалять себя из обработчика себя

нужно запустить

TTask.Run(procedure begin TThread.Synchronize(procedure begin ваше действие с компонентом end) end);

Спасибо! Я уже накостылял )))))

procedure TfmAppointment.lvSelectedServicesButtonClick(const Sender: TObject;
  const AItem: TListItem; const AObject: TListItemSimpleControl);
begin
    Timer.Tag := AItem.Index;
    Timer.Enabled := True;
end;

procedure TfmAppointment.TimerTimer(Sender: TObject);
begin
    timer.enabled := false;
    lvSelectedServices.BeginUpdate;
    if lvSelectedServices.ItemCount > 0 then
        lvSelectedServices.Items.Delete(Timer.Tag);
    lvSelectedServices.EndUpdate;
end;

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...