-
Похожий контент
-
- 14 ответов
- 912 просмотра
-
- 3 ответа
- 1 595 просмотров
-
- 0 ответов
- 1 502 просмотра
-
- 6 ответов
- 1 504 просмотра
-
- 8 ответов
- 2 092 просмотра
-
- 20 ответов
- 3 360 просмотров
-
- 5 ответов
- 1 646 просмотров
-
- 7 ответов
- 3 236 просмотров
-
- 1 ответ
- 6 757 просмотров
-
- 24 ответа
- 5 317 просмотров
-
-
Последние посетители 0 пользователей онлайн
- Ни одного зарегистрированного пользователя не просматривает данную страницу
Вопрос
Kikoma
Следующая ситуация:
Есть база данных с полями: id, product_name, price, cart (корзина) - Думаю пояснять излишне.
по условию cart>0 формируется запрос и заполняется TListBox кастомизированным Item-ом который содержит SpinBox. при изменении SpinBox вызывается процедура, которая вносит изменение в БД (cart) и высчитывает сумму в этом Item.
Все работает, все хорошо, но...
Задумал я что при SpinBox = 0, у меня этот TListBoxItem исчезал, для этого на изменение SpinBox если он равен 0, я запускаю процедуру формирования (Заполнения) этого TListBox заново.
Вываливается ошибка Access ..to address XXX, при чем при пошаговой трассировки исключение вызывает FMX.Edit строка 3811 CustomEditBox.Change; в procedure TValueRangeCustomEditBox.DoAfterChange; (DELPHI XE6)
т.е. моя процедура полностью отрабатывается (Заполняется новый список Item-ов) и возникает эта ошибка.
При чем на 32-bit Windows все работает нормально, только на андроиде возникает это исключение, при чем приложение продолжает нормально функционировать.
Если я правильно понимаю, то эта процедура DoAfterChange пытается что то сделать с объектом, которого уже нет.
Это баг или я неправильно алгоритм построил?
Ссылка на комментарий
7 ответов на этот вопрос
Рекомендуемые сообщения