<h4>190分:如何在RichEdit中作简单的语法分析?</h4>(190分)

  • 主题发起人 主题发起人 prog12
  • 开始时间 开始时间
P

prog12

Unregistered / Unconfirmed
GUEST, unregistred user!
如遇到关键字(int,void等)自动改变为粗体字.
大虾们最好给出bcb的代码,delphi也凑活
 
最好在给详细的语法规范,如integer中的int就不能够变为粗体字!
 
是呀,这也要判断一下.
还是有源码省事
 
按行分析,在RichEdit1.Lines中查找关键字,
备份光标位置,设置RichEdit1中SelectStart, SelectLength为关键字的位置
将SelectAttrib设为粗体,
恢复光标位置。
 
首先你要有一个‘语法字典’,格式和内容你可以参考UltralEdit的Wordfile.txt或
EditPlus的.stx文件。
然后就是用一个变量纪录正在编辑的字符串(active word),每当变量的值改变,就到
‘语法字典’里去搜索,根据搜索结果进行相应处理就行了。
更进一步的话,还可以做出DELPHI 编辑器的各种效果,这个也可以参考上面两种编辑
器的做法。
至于源码嘛。。呵呵,简单的太简单了,复杂的又太复杂了,我就偷懒了。。。

 
你可以先将rtf拷贝到一个临时文件里,然后再加入特别的标志,然后重画。
 
我有一个控件mwedit,不知道适不适合。介绍
有了它,您也能够轻松的写出像Delphi 自带的Editor一样的编辑器来,它除了支持
Pascal语法的特殊高亮显示之外,还能够 支持其它十多种的语法高亮显示。最妙的是
,mwEdit居然还能够和数据库连接起来,
 
jams:
只要在判断处加空格就行了
 
到http://www.dream-com.com下在Dream控件包,支持c,c++,java,delphi....的语法分析,
非常Cool,需要source可以e-mail给你.
 
这种问题,只能用类似rtf的构件,然后在keypress的时候,程序自己判断
从前一个空格到当前字符是否关键字,然后做处理


宋远午:
能把这套构件mail给我么?
h@sun.net.cn
非常感谢:)

 
Please Email to me.....
 
to
宋远午:
thx
my address:loopy@netease.com
 
好的,因为星期六,星期天不上班,没能及时给你们e-mail过来,很不好意思.
今天,早上上班一看有这么多兄弟要这套控件,太看得起在下了.好了,废话少说,我马上e-mail.
 
什么控件?大家不要忘记最好的关键字彩色显示控件:mwEdit。一个被评为5星级的控件,
在这个领域还没有其他控件能够超过他的。支持几十种语言的语法高亮显示,也可以自己订制,功能多多了
 
到程序员大本营下载<a href="http://www.csdn.net/delphi/vcl/edit/mwedit.zip">mwedit.zip</a>
 
我也想要一份:)guolijuncc@263.net
 
多人接受答案了。
 
后退
顶部