Изменить цвет текста в WinForms RichTextBox [дубликат]

Это означает, что наиболее переносимым способом определения реализации методов классов шаблонов является определение их внутри определения класса шаблона.

template < typename ... >
class MyClass
{

    int myMethod()
    {
       // Not just declaration. Add method implementation here
    }
};
30
задан Addie 6 May 2013 в 20:43
поделиться

2 ответа

Конечно, вы можете использовать для этого свойства SelectionStart, SelectionLength и SelectionColor. Работает неплохо.

Посетите эту страницу для получения информации об этих свойствах.

Вы можете узнать длину текста RichTextBox и раскрасить его по мере продвижения, установив для свойства SelectionStart текущую длину, получив длину строки, которую вы собираетесь добавить, установите SelectionLength и затем установите SelectionColor соответствующим образом. . Промойте и повторите для каждой добавленной струны.

int length = richTextBox.TextLength;  // at end of text
richTextBox.AppendText(mystring);
richTextBox.SelectionStart = length;
richTextBox.SelectionLength = mystring.Length;
richTextBox.SelectionColor = Color.Red;

Что-то вроде того. Вот как я помню, как это работало.

46
ответ дан 27 November 2019 в 23:17
поделиться

Я просто делал это в программе, которую писал. Я делал что-то вроде @itsmatt, но мне кажется, что это немного проще. Вы можете просто установить Selectioncolor , и с этого момента RichTextBox будет иметь этот цвет, пока вы не измените его на что-то другое. Если вы тестируете каждую строку, это, кажется, работает хорошо и легко.

if(myString == "Long") 
{ 
  richTextBox.SelectionColor = Color.Red; 
}
else
{
  richTextBox.SelectionColor = Color.Green
}
richTextBox.AppendText(myString);
36
ответ дан 27 November 2019 в 23:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: