Вверх ↑
Этот топик читают: Гость
Ответов: 1058
Рейтинг: 76
#1: 2011-11-06 13:35:53 ЛС | профиль | цитата
Господа, чет запутался. Толи еще не проснулся, толи мозгов не хватает как правильно использовать точки.
При добавлении текста в StrList с точки Text аналогичного компонента, все строки в добавленном тексте считаются как одна строка и значение на точке Count увеличивается всего лишь на единицу.

Нужно, чтобы при добавлении текста на точке Count значение увеличивалось ровно на количество строк добавленных из точки Text.

Естественно что при переборе строк с помощью ArrayEnum проблем нету.

code_25695.txt


карма: 0

0
файлы: 1code_25695.txt [1.1KB] [78]
Ответов: 3889
Рейтинг: 362
#2: 2011-11-06 13:47:14 ЛС | профиль | цитата
tom-it, Что-то мудрите...
code_25696.txt
карма: 1

0
файлы: 1code_25696.txt [705B] [118]
Ответов: 1058
Рейтинг: 76
#3: 2011-11-06 13:51:13 ЛС | профиль | цитата
Да с Memo проблем нету, нужно именно с StrList, а оно так не катит.
Попробуйте в своей схеме не в Memo добавлять, а в StrList.
карма: 0

0
Ответов: 3889
Рейтинг: 362
#4: 2011-11-06 13:53:23 ЛС | профиль | цитата
Интересное наблюдение - из StrList -> Memo добавление действительно отличается от Memo -> Memo: очевидно, сохраняется пустая строка, изначально сидевшая в Memo-приёмнике
карма: 1

0
Ответов: 8930
Рейтинг: 823
#5: 2011-11-06 13:59:00 ЛС | профиль | цитата
tom-it, думается, что всё логично: Вы добавляете ОДНУ строку, хотя она и содержит символы 10 и 13, а при визуальном отображении в Memo (Вы же берёте с точки "Хранит список строк, разделенных символами 10 и 13") эти символы разделяют эту строку на составляющие.
карма: 19

1
Голосовали:tom-it
Ответов: 3889
Рейтинг: 362
#6: 2011-11-06 13:59:24 ЛС | профиль | цитата
tom-it, вижу, StrList действительно имеет иной механизм работы, но это и не удивительно, он не предназначен для приёма многострочного текста по doAdd, это побочный эффект процедур, встроенных в текстовые элементы интерфейса - разбиение строки по кодам перевода. А текстовый массив он всё-таки массив и такого предопределённого поведения, похоже, просто не подразумевал.
карма: 1

1
Голосовали:tom-it
Ответов: 1058
Рейтинг: 76
#7: 2011-11-06 14:07:32 ЛС | профиль | цитата
Леонид писал(а):
хотя она и содержит символы 10 и 13

Леонид писал(а):
эти символы разделяют эту строку на составляющие.
как раз на это и повелся
Поначалу делал на Memo, чтобы визуально контролировать происходящее, когда закончил заменил на StrList и схема перестала работать.
Теперь неохотно придется переделывать.
Жаль, очень жаль...

карма: 0

0
Ответов: 8930
Рейтинг: 823
#8: 2011-11-06 14:11:33 ЛС | профиль | цитата
tom-it, зато в будущем уже не поведётесь!
карма: 19

0
Ответов: 1058
Рейтинг: 76
#9: 2011-11-06 14:15:20 ЛС | профиль | цитата
Леонид писал(а):
зато в будущем уже не поведётесь!



Может стоит в вики упоминание добавить, чтобы и другие на те же грабли не наступили.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#10: 2011-11-06 19:50:10 ЛС | профиль | цитата
tom-it, ничего добавлять не надо. Ты точку Memo.Text соединил с точкой StrList.Str
Весь текст добавился одной строкой.
Читай описания к точкам.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
10
Сообщение
...
Прикрепленные файлы
(файлы не залиты)