问题描述
请教有没有办法实现根据不同的单词,在输入时就改变字体颜色,类似IDE那样
解决方案
解决方案二:
这就要你自己设置了,什么单词设置成什么颜色
解决方案三:
输入时就改变颜色?IDE也没那么智能吧你没输入完之前,鬼知道你到底输入完是个神马
解决方案四:
你可以在textchanged事件里去判断,把关键字放到数组里,循环遍历查找,然后设置颜色但是不要企图在用户输入完整的单词前就让它变色人工比对也不可能那么智能,何况是计算机
解决方案五:
你只要找到单词的位置,然后可以代码选择文本,代码改变当前选择的文本的颜色,改完重新把当前光标放到没执行代码前的位置去
解决方案六:
我想做类似开发环境里那样,如,在VS中输入“private”关键字,就会显示关键字的颜色,双引号下的字符串又显示其他的不同的颜色等等字体颜色区分
解决方案七:
嘿嘿,这种技术好玩。我提供几个Idea,希望对你有帮助。1.你要有个分析单词的算法,取当前光标左右的文本(到空格为止为一个单词)。2.到关键字字典中匹配单词是否为关键字。3.如果是关键字,则记录光标位置SelectionStart。然后关键代码来了:intpreSelectionStart=richTextBox1.Text.Length-1;richTextBox1.Text="HelloWorld!";richTextBox1.Select(6,5);richTextBox1.SelectionColor=Color.Red;richTextBox1.SelectionStart=preSelectionStart;//恢复光标位置
如果做出来了记得私信告诉下我哈。
解决方案八:
@YokeqiIdea有缺陷的,如果输入关键字后紧随单引号或者双引号,关键字还是显示的关键字颜色,不能简单一空格区分
解决方案九:
引用7楼cqc_123的回复:
@YokeqiIdea有缺陷的,如果输入关键字后紧随单引号或者双引号,关键字还是显示的关键字颜色,不能简单一空格区分
姐姐,你可以说我的思路方向是错的,这个没问题能接受~,但我给你提供Idea并不是就OK,具体实现算法你要自己琢磨。难道要我们陪你一起头脑风暴出整个程序实现啊~~晕。另外,我这个空格的判断方法只是举一个栗子,别当真好不好...你要深究的话你是不是还要考虑整个文件复制-粘贴,然后分析整篇文本的关键字这样的问题啊...
解决方案十:
sharpdevelop开源的IDE自己研究下