Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
mpdasa
4 / 4 / 1
Регистрация: 18.01.2010
Сообщений: 136
#1

Пропадает закраска текста при копировании из одного RichEdit-а в другой - Delphi

26.05.2012, 08:04. Просмотров 573. Ответов 5
Метки нет (Все метки)

В одном ричедит раскрашенный текст, с помощью следующих комманд:

Delphi
1
2
3
4
5
for ...
RichEdit1.SelStart :=1;
RichEdit1.SelLength :=1;
RichEdit1.SelAttributes.Color:=ClRed;
end;
Копирую раскрашенный ричедит в другой

Delphi
1
 RichEdit2.text:=RichEdit1.text;
При копировании раскраска ПРОПАДАЕТ. Выручайте! Пожалуйста!
Очень нужно именно копированием перенести один ричедит в другой с сохранением цвета.

Или подскажите, как можно перенести текст с сохранением цвета.
http://www.cyberforum.ru/delphi-beginners/thread519848.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2012, 08:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Пропадает закраска текста при копировании из одного RichEdit-а в другой (Delphi):

В поле RichEdit удалить html-теги; при вставке в RichEdit замена старого текста на новый
Всем привет! помогите пожалуйста с написание кода на две процедуры : - В поле...

Копирование текста из одного Memo в другой
мне нужно скопировать текст из memo1 в memo2. я пробовал таким способом:...

Добавление текста из одного текстового файла в другой
Задание: Даны два текстовых файла. Добавить в конец первого файла содержимое...

Пропадает шрифт и цвет в RichEdit
Мой пример. Есть RichEdit. С помощью UpDown2Click меняю размер шрифта. ...

Ошибки при переносе программы с одного компьютера на другой
Здраствуйте. Собственно образовалась проблема, перенес программу с одного ПК на...

5
Санек25
420 / 350 / 19
Регистрация: 14.05.2012
Сообщений: 1,437
26.05.2012, 14:59 #2
Копирую раскрашенный ричедит в другой

RichEdit2.text:=RichEdit1.text; //вы не копируете а присваеваете значение RichEdit2

RichEdit2 тоже надо разукрашивать
0
mpdasa
4 / 4 / 1
Регистрация: 18.01.2010
Сообщений: 136
26.05.2012, 16:28  [ТС] #3
Цитата Сообщение от Санек25 Посмотреть сообщение
Копирую раскрашенный ричедит в другой

RichEdit2.text:=RichEdit1.text; //вы не копируете а присваеваете значение RichEdit2

RichEdit2 тоже надо разукрашивать
А как тогда сделать так, чтобы добавить текст в раскрашенное окно?
Есть текст (ричедит): американцы на Луне были!

А надо чтобы в итоге получилось: американцы на Луне не были!

Вообщем добавить текст с сохранением цвета. А не перерисовывать потом опять.

Для меня это неразрешимая задача.
0
Санек25
420 / 350 / 19
Регистрация: 14.05.2012
Сообщений: 1,437
26.05.2012, 16:33 #4
[QUOTE=mpdasa;3082741]В одном ричедит раскрашенный текст, с помощью следующих комманд:

Delphi
1
2
3
4
5
for ...
RichEdit1.SelStart :=1;
RichEdit1.SelLength :=1;
RichEdit1.SelAttributes.Color:=ClRed;
end;

вот как первый разукрашивали так и ввторой только вместо RichEdit1 пишите RichEdit2
0
mpdasa
4 / 4 / 1
Регистрация: 18.01.2010
Сообщений: 136
26.05.2012, 19:23  [ТС] #5
вот как первый разукрашивали так и второй только вместо RichEdit1 пишите RichEdit2[/QUOTE]

А по другому ни как?

Дело в том, что я разукрасил текст по сложному алгоритму, и для того, чтобы алгоритм работал, мне пришлось заменить несколько букв другими символами.
Теперь когда текст раскрашен, я должен вставить эти изначальные символы и удалить промежуточные. И с сохранением цвета.
Иначе замкнутый круг, если я вставлю символы, (и надо будет заново раскрасить) то алгоритм раскраски работать не будет.

Добавлено через 52 минуты
Добрые люди на других форумах подсказали ответы.

Самый простой и гениальный - это:

Delphi
1
2
3
4
RichEdit1.SelStart := 0;
RichEdit1.SelLength :=300;
RichEdit1.CopyToClipboard;
RichEdit2.PasteFromClipboard;
Так можно переносить/добавлять любой кусок с сохранением форматирования.


Или еще ответ:
http://groups.google.com/group/fido7...e94427c7?pli=1
0
Санек25
420 / 350 / 19
Регистрация: 14.05.2012
Сообщений: 1,437
26.05.2012, 21:19 #6
Архив с файлом выставте посмотрим а так на пальцах не знаю что сказать ... Зачем было что-то удалять ...О_о
0
26.05.2012, 21:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2012, 21:19
Привет! Вот еще темы с решениями:

Сделать так, чтобы при выборе одного checkbox'a нельзя было выбрать другой
Помогите сделать так, что бы при выборе одного checkbox'a нельзя было выбрать...

При вставке таблицы из одного файла в другой пропадает часть текста
Доброго времени суток, форумчане! Помогите, пожалуйста, не слишком опытному...

Перемещение текста из одного RichEdit в другой
Здравствуйте! Подскажите в решении такой проблемы! Есть два RichEdit ...

Дополнить/стереть массив при копировании из одного массива в другой
Есть 2 массива byte A и byte B, нужно что-бы пока A<B он копировал первый байт...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru