Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更改富文本框的颜色并在按enter键时向其添加文本_C# - Fatal编程技术网

C# 更改富文本框的颜色并在按enter键时向其添加文本

C# 更改富文本框的颜色并在按enter键时向其添加文本,c#,C#,我正在做一个RPG风格的文本游戏。目前它是在一个控制台应用程序中,但我更愿意将它移到一个Windows窗体应用程序中,以获得一些附加功能和新奇之处。这带来了一些问题 颜色区分消息的类型,因此颜色很重要。我在另一个问题上发现了这一点: int length = richTextBox.TextLength; // at end of text richTextBox.AppendText(mystring); richTextBox.SelectionStart = length; richTe

我正在做一个RPG风格的文本游戏。目前它是在一个控制台应用程序中,但我更愿意将它移到一个Windows窗体应用程序中,以获得一些附加功能和新奇之处。这带来了一些问题

颜色区分消息的类型,因此颜色很重要。我在另一个问题上发现了这一点:

int length = richTextBox.TextLength;  // at end of text
richTextBox.AppendText(mystring);
richTextBox.SelectionStart = length;
richTextBox.SelectionLength = mystring.Length;
richTextBox.SelectionColor = Color.Red;
这似乎是在文本后添加颜色。有没有更好的方法来处理颜色?还有,如果我想在一行上有多种不同的颜色呢?这使事情复杂化了。(最好使用颜色代码来指定字符串本身的颜色,例如&&4这是红色的&&F这是白色的&&0这是黑色的,但我想这可能会使事情变得过于复杂。)


目前,输入框是一个简单的文本框。按enter键时,不会发生任何事情。我希望enter清除文本框并输出一个可以使用的字符串(不一定要添加到富文本框中)。

我在评论中假设的是真的,只是测试了它。将代码更改为:

Color prevColor = richTextBox.SelectionColor;
richTextBox.SelectionColor = Color.Red;
richTextBox.AppendText(mystring);
richTextBox.SelectionColor = prevColor;

我在评论中假设的是真的,只是测试了一下。将代码更改为:

Color prevColor = richTextBox.SelectionColor;
richTextBox.SelectionColor = Color.Red;
richTextBox.AppendText(mystring);
richTextBox.SelectionColor = prevColor;

我已经有一段时间没试过了。。但我很确定,在添加文本之前,您可以设置
SelectionColor
,它将采用该颜色。然后你就把它换回来。@rae1n他提供了一些他尝试过的东西。。甚至似乎已经调试了他的问题。。你还想要什么?@SimonWhitehead他提供的代码似乎不是他的。显然不是。那没什么关系,我已经试过有一段时间了。。但我很确定,在添加文本之前,您可以设置
SelectionColor
,它将采用该颜色。然后你就把它换回来。@rae1n他提供了一些他尝试过的东西。。甚至似乎已经调试了他的问题。。你还想要什么?@SimonWhitehead他提供的代码似乎不是他的。显然不是。那没什么关系,有机会我会查一查的。你知道我可以在[Enter]上激活输入框吗?这是每个WinForms教程的第4个教程。我建议搜索:)直截了当的回答最有帮助/我们的业务是确保人们不仅能得到答案,还能学到东西。否则有一天我们可能会和你一起工作。。而且你不知道交易:)此外,这里有600多个答案回答了这个特定的问题。问题是,我不知道要搜索什么。我会在有机会的时候检查一下。你知道我可以在[Enter]上激活输入框吗?这是每个WinForms教程的第4个教程。我建议搜索:)直截了当的回答最有帮助/我们的业务是确保人们不仅能得到答案,还能学到东西。否则有一天我们可能会和你一起工作。。你不知道交易:)此外,这里有600多个答案回答了这个特定的问题。问题是,我不知道要搜索什么。