![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Старожил
Регистрация: 29.01.2008
Сообщений: 2,406
|
![]()
Привет всем!
В функцию AnsiMatchStr надо передовать фиксированный массив строк. А как передать динамический массив? Вот например строк в memo? Код:
![]() Помогите plz! |
![]() |
![]() |
![]() |
#2 |
Баламучу слегка...
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,585
|
![]()
Странно, спрашиваешь о AnsiMatchStr, а в коде AnsiIndexSt. Ну да не суть важно. В общем-то здесь ошибка только в том, что неверно устанавливаешь длину массива. Она будет все-таки Memo1.Lines.Count, а у тебя на 1 меньше
Последний раз редактировалось Баламут; 29.12.2008 в 14:20. |
![]() |
![]() |
![]() |
#3 | |
Старожил
Регистрация: 29.01.2008
Сообщений: 2,406
|
![]() Цитата:
---- Дело в том, копировать так весь текст из memo в массив дело не из быстрых, особенно если строк много. И это если AnsiMatchStr максимально оптимизирована. А нельзя код по легче? Вот к примеру что-то типа этого: Код:
[Pascal Error] EXE_FORM.pas(49): E2029 '[' expected but ')' found |
|
![]() |
![]() |
![]() |
#5 | |
Старожил
Регистрация: 29.01.2008
Сообщений: 2,406
|
![]() Цитата:
[Pascal Error] EXE_FORM.pas(50): E2036 Variable required Во-вторых: это был всего лишь пример. Мне нужен весь текст. Если я укажу номер строчки, то будет только строчка. Тогда так надо: Код:
![]() |
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 29.01.2008
Сообщений: 2,406
|
![]()
Кажется, это вообще ерунда в таком случае...
А разве нет? Вот описание как выглядит функция ansiIndexStr в strUtils: Код:
Просто идём циклом по строчкам в memo и проблема долой! ![]() |
![]() |
![]() |