![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| 6urunduk |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 27.1.2010 Репутация: нет Всего: нет |
Просмотрел результаты поиска, нашёл полезнве темы, но по моему вопросу нет :( Вот код
|
|||
|
||||
| ~FoX~ |
|
|||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 5 Всего: 68 |
6urunduk, SetLength
Может проще массив стринговый сделать? Это сообщение отредактировал(а) ~FoX~ - 27.1.2010, 22:36 |
|||
|
||||
| 6urunduk |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 27.1.2010 Репутация: нет Всего: нет |
~FoX~, что SetLength?? не понял. ну сделаю я стринговцй массив, а как в него инфу из разных эдитов записывать? и потом в эдитах разного рода инфа (цифры, буквы, символы)
|
|||
|
||||
| kami |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 22 Всего: 72 |
Код не лишен недостатков, помимо не-инициализации массива.
1. Не помешает обозвать массив как-нибудь по другому, ибо форма тоже имеет свойство Components[i], что уже потенциальный глюкодром. Что из них (массив или свойство) выберет при компиляции Delphi - я навскидку и не скажу, надо смотреть, где объявлен массив. 2. Сперва нужно найти все едиты и занести их в массив, а уже потом, в другом цикле - выводить их в грид. Ибо получается: на форме далеко не всё - едиты, как минимум присутствует и TStringGrid. Далеко не обязательно у едита будет имя Edit1, Edit2, Edit3.... (если так - то ССЗБ). Пускай на форме 2 едита, 1 кнопка и 1 TStringGrid. В этом случае ComponentCount = 4. Благодаря тому, что цикл идет не по всем компонентам (не учитывается индекс 0), получаем: на первой итерации - заносим Edit1 на второй итерации - заносим Edit2 на третьей - такого edit нету, будет возвращено nil. При обращении к (Components[3] as TEdit).Text получаем AccessViolation благодаря тому, что Components[3]=nil. Добавлено @ 00:49 Вообще - лучше так, хотя и здесь потенциальная ошибка - в StringGrid может просто не оказаться нужного количества ячеек:
Это сообщение отредактировал(а) kami - 28.1.2010, 00:52 |
|||
|
||||
| ~FoX~ |
|
||||
![]() НЕ рыжий!!! ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2819 Регистрация: 8.10.2003 Где: Зеленоград Репутация: 5 Всего: 68 |
6urunduk, SetLengt - устанавливает размерность массива,
В эдитах всегда текст! |
||||
|
|||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |