![]() |
|
Модераторы: Snowy, Alexeis, MetalFan |
![]()
|
|
| ZufuS |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 237 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
Имеется компонент струкутры TEdit. При изменении его текста на форме (в ScrollBox) должны разместиться Label'ы в количестве, указанном в тексте Edit'a.
При первом нажатии цифры всё хорошо, а при втором появляется ошибка. Подскажите как нужно производить уничтожение этих компонентов и почему при вводе 0 сразу появляется ошибка, а при вводе другой цифры, пока не нажать очередную, всё нормально. |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 6 Всего: 27 |
1. Перед созданием компонентов напиши
for i:=0 to Form1.n do if Assigned(Label[i]) then Label[i].Free; // это удаление предыдущих лабелов. 2. При вводе 0 получаешь SetLength( бла-бла, 0 ). т.е. в списке ноль элементов, после чего производится попытка создать один элемент (for от НОЛЬ до НОЛЬ т.е один проход цикла). Надо писать for i:=1 to Form1.n do Label[i-1] ..... ..... тогда на ноль реакции не будет. 3. Ошибка, возникающая после ввода второй цифры связана с тем, что уже созданным элементам списка присваевается значение TLabel.Create(self). Этого делать нельзя (см. пункт 1) |
|||
|
||||
| ZufuS |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 237 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
Всё ли я правильно написал? Ничего не изменилось. Хочу заметить, что если ввести что-нибудь от 100 до 109, то все 3 цифры вводятся нормально и ругаться начинает на четвертой. А если ввести, например, 55, то уже на второй. |
|||
|
||||
| Bitter |
|
|||
![]() Опытный лентяй ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1209 Регистрация: 15.8.2004 Где: Харьков, Ukraine Репутация: 6 Всего: 27 |
|
|||
|
||||
| ZufuS |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 237 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
Спасибо
Это сообщение отредактировал(а) ZufuS - 26.3.2007, 23:48 |
|||
|
||||
![]()
|
| Правила форума "Delphi: Звук, графика и видео" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |