我正在编写一个Win32程序,其中我加载了文本文件。是否可以突出显示编辑框中显示的特定单词?是否可以突出显示Win32编辑控件中的文本?
通过突出显示,我的意思是,像在语法突出显示中那样改变文本的颜色。
我正在编写一个Win32程序,其中我加载了文本文件。是否可以突出显示编辑框中显示的特定单词?是否可以突出显示Win32编辑控件中的文本?
通过突出显示,我的意思是,像在语法突出显示中那样改变文本的颜色。
标准的编辑控件不支持。改用RichEdit控件。它支持通过EM_SETCHARFORMAT
消息将字体/颜色设置应用于一系列字符。
Iczelion tutorial显示了EM_SETCHARFORMAT
的替代方式,看起来更像是你所问的。还有其他几个。当计算机速度较慢时,这种情况更为常见,但即时突出显示是最佳选择。
该教程中描述的“EM_SETCHARFORMAT”的缺陷可以被克服,而不需要继承“WM_PAINT”。请参阅此文章:http://www.bellsouthpwp2.net/r/e/rediv/Papers/FasterSyntaxHighlighting.doc –
是否存在不是Word文档(html/rtf/pdf)的源?我很久没有做语法突出显示,并想检查一下。 –
找到原始源代码[C++ builder developer's journal October 1999](http://bcbjournal.org/articles/vol3/9910/Faster_rich_edit_syntax_highlighting.htm) –
谢谢。如何创建自定义编辑控件?我不打算为这个项目做,但我很好奇。我似乎无法找到任何教程。你能指给我一个吗?像概述基本步骤和格式的一个? – devjeetroy