Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме 15-35 тыс рублей в месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.09.2007, 11:41   #1
Artem
Пользователь
 
Регистрация: 08.07.2007
Сообщений: 76
По умолчанию В Memo сделать так, чтобы текст был разного цвета, разноцветный memo

У меня такой вопрос, можно ли в компоненте TMemo сделать так, чтобы текст был разного цвета. Если нет, то в каком компоненте так можно сделать?
Только начал изучать Delphi...
Artem вне форума Ответить с цитированием
Старый 06.09.2007, 11:43   #2
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Пример с Trichedit
{
To color text in a TRichEdit, follow this two steps:

Um einen Text in einem TRichEdit einzufдrben, mьssen folgende 2 Schritte
gemacht werden:

1) Select the text with the SelStart, SelLength properties.
Markiere den Text mit SelStart, SelLength Eigenschaften.

2) Set the text attribtutes through the SelAttributes property.
Die Textattribute mit SelAttributes setzen.
}

{
1. Example/ Beispiel:

Add a colored line to a TRichEdit:
Eine farbige Zeile zu einem TRichEdit hinzufьgen:
}

procedure AddColoredLine(ARichEdit: TRichEdit; AText: string; AColor: TColor);
begin
with ARichEdit do
begin
SelStart := Length(Text);
SelAttributes.Color := AColor;
SelAttributes.Size := 8;
SelAttributes.Name := 'MS Sans Serif';
Lines.Add(AText);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
AddColoredLine(RichEdit1, 'Hallo', clRed);
AddColoredLine(RichEdit1, 'Hallo', clGreen);
end;

{
2. Example/ Beispiel:

To color the 5 characters.
Die ersten 5 Zeichen im Richedit blau einfдrben.
}


procedure TForm1.Button1Click(Sender: TObject);
begin
RichEdit1.SelStart := 0;
RichEdit1.SelLength := 5;
RichEdit1.SelAttributes.Color := clBlue;
end;

{
3. Example/ Beispiel: ( by www.delphimania.de)

To color a specified line with a color
So kann eine beliebige Zeile mit einer Farbe gefдrbt werden:
}

procedure RE_ColorLine(ARichEdit: TRichEdit; ARow: Integer; AColor: TColor);
begin
with ARichEdit do
begin
SelStart := SendMessage(Handle, EM_LINEINDEX, ARow - 1, 0);
SelLength := Length(Lines[ARow - 1]);
SelAttributes.Color := AColor;
SelLength := 0;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ZeileFaerben(RichEdit1, 4, clGreen);
end;
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 06.09.2007, 11:51   #3
Artem
Пользователь
 
Регистрация: 08.07.2007
Сообщений: 76
По умолчанию

спасибо!!!
Только начал изучать Delphi...
Artem вне форума Ответить с цитированием
Старый 07.09.2007, 13:40   #4
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,495
По умолчанию

http://programmersforum.ru/showthread.php?t=1896
Alar вне форума Ответить с цитированием
Ответ
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текст HTML документа в Memo Delpinist Компоненты Delphi 9 09.09.2009 13:19
Как сделать чтобы при вводе в Memo появлялись скролинги вертиклаьный и горизонтальный? Sanek777 Общие вопросы Delphi 2 19.11.2008 17:09
напечатать текст из Memo Sanek777 Общие вопросы Delphi 1 30.08.2008 21:25
(Memo) на текст D-mon БД в Delphi 4 06.06.2008 11:22
считать текст из memo - посимвольно prizrak1390 Помощь студентам 10 13.12.2007 21:42