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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2009, 20:08   #1
LAZER
 
Аватар для LAZER
 
Регистрация: 02.03.2009
Сообщений: 8
Вопрос Окрашивание текста в зависимости от длинны слова(подскажите как)

Подскажите пожалуйста, как сделать так, чтобы была кнопочка, при нажатии которой слова длинной более 4х символов окрашивались в зеленый цвет?
LAZER вне форума Ответить с цитированием
Старый 02.03.2009, 20:22   #2
AlDelta
Реанимируюсь...
Участник клуба
 
Аватар для AlDelta
 
Регистрация: 19.07.2007
Сообщений: 1,445
По умолчанию

А подробности? Где этот текст находится? Язык? Свои мысли?
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте.
Правила форума => Правила раздела => Для общего развития => Помощь студентам => Перед тем, как создавать тему, скачайте себе...
P.S.: форум не песочница (с)
название статьи на сайте MS: "Отмена принудительного отключения автоматического запуска в реестре Windows"
AlDelta вне форума Ответить с цитированием
Старый 02.03.2009, 21:15   #3
LAZER
 
Аватар для LAZER
 
Регистрация: 02.03.2009
Сообщений: 8
По умолчанию

За подробности извиняюсь, новичек... Мне дали курсовую работу, перевод русского текста на транслит, в программе 2 окна: куда вводим текст, и второе окно - переведенный текст(компонент Memo), нужно в окне перевода по желанию пользователя, чтобы слова длинной 4х символов окрашивались в зеленый цвет
LAZER вне форума Ответить с цитированием
Старый 02.03.2009, 21:20   #4
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

На Делфи?

Вкладка "Win32" компонент "RichEdit"...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 02.03.2009, 21:22   #5
LAZER
 
Аватар для LAZER
 
Регистрация: 02.03.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от DomiNick Посмотреть сообщение
На Делфи?

Вкладка "Win32" компонент "RichEdit"...
Code Gear RAD Studio, есть компонент TRichEdit
LAZER вне форума Ответить с цитированием
Старый 02.03.2009, 21:44   #6
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Ну... Есть такой код для Делфи 7:
Код:
Procedure TForm1.CheckBox1Click(Sender: TObject);
Var a: Integer; Text: String;
Begin
Text:='ch'; // Текст который нужно найти и выделить
If CheckBox1.Checked Then
      Begin
      a:=0;
      While a<=Length(RichEdit1.Text) Do
            Begin
            RichEdit1.SelStart:=RichEdit1.FindText(Text, a, Length(RichEdit1.Text)-a, [stMatchCase]); // или stWholeWord
            RichEdit1.SelLength:=Length(Text);
            RichEdit1.SelAttributes.Color:=clRed; // окрашиваем в красный цвет
            a:=RichEdit1.SelStart+Length(Text);
            Application.ProcessMessages; // чтоб не зависало, если текст довольно большой
            End;
      End
Else
      Begin
      RichEdit1.SelectAll; // выделяем всё
      Form1.RichEdit1.SelAttributes.Color:=clBlack; // окрашиваем в чёрный цвет
      End;
End;
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 02.03.2009, 21:51   #7
LAZER
 
Аватар для LAZER
 
Регистрация: 02.03.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от DomiNick Посмотреть сообщение
Ну... Есть такой код для Делфи 7:
Код:
Procedure TForm1.CheckBox1Click(Sender: TObject);
Var a: Integer; Text: String;
Begin
Text:='ch'; // Текст который нужно найти и выделить
If CheckBox1.Checked Then
      Begin
      a:=0;
      While a<=Length(RichEdit1.Text) Do
            Begin
            RichEdit1.SelStart:=RichEdit1.FindText(Text, a, Length(RichEdit1.Text)-a, [stMatchCase]); // или stWholeWord
            RichEdit1.SelLength:=Length(Text);
            RichEdit1.SelAttributes.Color:=clRed; // окрашиваем в красный цвет
            a:=RichEdit1.SelStart+Length(Text);
            Application.ProcessMessages; // чтоб не зависало, если текст довольно большой
            End;
      End
Else
      Begin
      RichEdit1.SelectAll; // выделяем всё
      Form1.RichEdit1.SelAttributes.Color:=clBlack; // окрашиваем в чёрный цвет
      End;
End;
Пишет неизвестные команды =(
LAZER вне форума Ответить с цитированием
Старый 02.03.2009, 21:58   #8
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Хм... Я не встречал "Code Gear RAD Studio"...
Но процедуры и функции компонента-то наверное должны быть похожими?
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 02.03.2009, 22:14   #9
LAZER
 
Аватар для LAZER
 
Регистрация: 02.03.2009
Сообщений: 8
По умолчанию

Цитата:
Сообщение от DomiNick Посмотреть сообщение
Хм... Я не встречал "Code Gear RAD Studio"...
Но процедуры и функции компонента-то наверное должны быть похожими?
по сути это и есть delphi и C++ в одном, и бесплатно...

Последний раз редактировалось LAZER; 02.03.2009 в 22:33.
LAZER вне форума Ответить с цитированием
Старый 03.03.2009, 17:15   #10
Костян Пират
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 103
По умолчанию

Цитата:
Код:
RichEdit1.SelStart:=RichEdit1.FindText(Text, a, Length(RichEdit1.Text)-a, [stMatchCase]); // или stWholeWord
RichEdit1.SelLength:=Length(Text);
RichEdit1.SelAttributes.Color:=clRed; // окрашиваем в красный цвет
a:=RichEdit1.SelStart+Length(Text);
...
Form1.RichEdit1.SelAttributes.Color:=clBlack; // окрашиваем в чёрный
если можно, подробнее прокомментируйте пожалуйста код...

Последний раз редактировалось Костян Пират; 03.03.2009 в 17:15. Причина: апшипка был...
Костян Пират вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как удалить текст до слова, потом от слова ? littlecoder Общие вопросы Delphi 7 29.12.2008 00:57
Окрашивание текста в зависимости от значения art1cool Microsoft Office Excel 2 19.08.2008 12:29
Слово нечетной длинны! Artem1987 Помощь студентам 2 28.10.2007 13:43