Вниз
Скачать: CL | DM;

Наложение в Memo   Найти похожие ветки 

← →
paule   (2004-12-17 03:23) [0]

Мастера, подскажите пожалуйста.

Имеется объект Memo. На нем текст в несколько строк.

Андрей     петрович
                   ,\ -------/
                                   Петров    
      ---
                              1922  

Так вот можно из этого получить одну строку както:

Андрей ---петрович ,\ -------/ 1922 Петров

Заранее спасибо


← →
KilkennyCat ©   (2004-12-17 03:28) [1]

если не ошибаюсь, у мемо есть lines...


← →
Palladin ©   (2004-12-17 03:30) [2]

Это вопрос или утвеждение, как тема для статьи? :)


← →
aus   (2004-12-17 03:34) [3]

>если не ошибаюсь, у мемо есть lines...

а у lines есть св-во text типа string, уже готовая строка.


← →
paule   (2004-12-17 03:42) [4]

ну и как это поможет?
Они же не наложатся строки. а просто друг к другу приплюсуются


← →
Palladin ©   (2004-12-17 04:11) [5]

В общем случае твоя задача не имеет решения.


← →
paule   (2004-12-17 04:13) [6]

а в частном случае?


← →
KilkennyCat ©   (2004-12-17 04:48) [7]

А в частном так: result := replace(memo.lines[0], "   ", memo.lines[3]) + memo.lines[1]//c убраными с переди пробелами по любому алгоритму, на вкус,\\ + memo.lines[2] + memo.lines[4]


← →
paule   (2004-12-20 04:25) [8]

такой алгоритм не покатит. не известно скока строк и в какой они последовательности :))


← →
KilkennyCat ©   (2004-12-20 04:35) [9]

если это неизвестно, то ничего не покатит, кроме как задания дополнительных условий, чтоб стало известно.


← →
paule   (2004-12-20 05:43) [10]

а если брать, строку и переносить её на канву компонента Image к примеру, потом брать другую строку и с тойже позиции TextOut делать.
Ониже наложатся? или одна строка дргую затрет?


← →
KilkennyCat ©   (2004-12-20 08:24) [11]

если не известно скока строк и в какой они последовательности , то задача неразрешима. Если наоборот, то можно и через рисунок, и через лабел...


← →
ocean   (2004-12-20 10:25) [12]

ну а просто как идею:
S := Memo1.Text;
for I := 1 to length (S) do
 if Ord(s[I]) > Ord(" ") then result[I] := S[I]; //убрать пробелы и переносы строк



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.02 c
14-1103182885
Dmitriy O.
2004-12-16 10:41
2005.01.02
Почему чем ближе к карпатам тем более Украинцы не любят Русских


1-1103389780
xayam
2004-12-18 20:09
2005.01.02
Перевод справки Delpi 7


3-1102300486
Apophis
2004-12-06 05:34
2005.01.02
Определение кол-ва пользователей....


1-1103117204
AbramovVi
2004-12-15 16:26
2005.01.02
TreeView


10-1075882635
basilura
2004-02-04 11:17
2005.01.02
Некорректная передача данных в TClientDataSet.




   Наверх