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

массив из классов TStrings   Найти похожие ветки 

← →
CW014   (2005-09-19 10:59) [0]

Добрый день.

Вот такой вопрос:
У меня есть компонент на странице - RichEdit. В нем в Lines (классе TStrings) храняться строки. Для того, что бы сделать несколько страниц делаю отдельный класс в котором используется динамический массив из TStrings для хранения. Так вот, как можно в этот массив запихнуть ЗНАЧЕНИЕ TStrings? А то как я понимаю метод RichEdit.Lines дает указатель на этот объект, поэтому если просто использовать Pages[Page]:=RichEdit.Lines, при удалении строк в RichEdit"е удаляются и строки в Pages[Page]...


← →
Anatoly Podgoretsky ©   (2005-09-19 11:01) [1]

Assign


← →
Fay ©   (2005-09-19 11:06) [2]


> при удалении строк в RichEdit"е удаляются и строки в
> Pages[Page]...

Фишка в том, что это один и тот же объект 8)
Pages[Page]:=RichEdit.Lines - это сохранение указателя


← →
CW014   (2005-09-19 11:30) [3]

to Fay:

Я про это и говорил. А мне нужно что бы он не указатель сохранял а значение. Для того, что бы при обнулении RichEdit.Lines в массиве Pages оставалось значение...


← →
Fay ©   (2005-09-19 11:36) [4]

2 CW014   (19.09.05 11:30) [3]
Ну так и копируй "значение". С.м. [1]


← →
CW014   (2005-09-19 11:38) [5]

to Fay:

Ага, а что к чему ассайнить? К моему массиву ссылку с моего RichEdit или наоборот? И еще вопрос: нужно ли делать Pages[Page]:=TStrings.Create?


← →
CW014   (2005-09-19 11:42) [6]

to Fay:

Тем более, что при попытке сделать assign у меня вываливается Abstract Error


← →
CW014   (2005-09-19 11:51) [7]

to ALL:

Все, спасибо, работает. Благодарю за помощь. :)


← →
Anatoly Podgoretsky ©   (2005-09-19 11:58) [8]

Наверно пытался присвоить TStrings, а надо его наследникам, которые имеют средства для хранения строк.


← →
CW014   (2005-09-19 12:22) [9]

Еще вопрос:

При реализации метода Assign у меня теряются все аттрибуты (жирный, подчеркнутый и т.д.) :( Можно ли сохранить их? Или можно ли то же самое сообразить с классом TRichEdit а не с классом TStrings?


← →
CW014   (2005-09-19 12:23) [10]

Чуть-чуть недоговорил: при вызове assign у TRichEdit вызывает исключение: "Cannot assign TRichEdit to TRichEdit" :(


← →
Anatoly Podgoretsky ©   (2005-09-19 13:15) [11]

CW014   (19.09.05 12:23) [10]
Ну это у тебя ошибка в программе.



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

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



Память: 0.47 MB
Время: 0.032 c
3-1125834784
Кабан
2005-09-04 15:53
2005.10.16
Выподающий список.


1-1127326732
френк
2005-09-21 22:18
2005.10.16
GetProcAddress


3-1125647332
Леди
2005-09-02 11:48
2005.10.16
Программное создание DSN


8-1116841859
ALL
2005-05-23 13:50
2005.10.16
MediaPlayer


6-1120112485
Леха.
2005-06-30 10:21
2005.10.16
POST




   Наверх