【问题标题】:C++ Builder Syntax HighlighterC++ Builder 语法高亮
【发布时间】:2017-11-04 03:38:01
【问题描述】:

我在互联网上搜索了如何做到这一点,但我找不到。

我需要在 RichEdit 中为特定单词着色,例如单词 falsetrue.

【问题讨论】:

  • 专业提示:谷歌你的主题行(正确拼写后)。
  • 除了 Jesper 不得不说的内容之外,在询问有关编码问题的问题时,您应该提供 Minimal, Complete, and Verifiable example。如果到目前为止您还没有尝试过任何代码,那么您的问题有点过早了。
  • @SierraMountainTech 我想要比备忘录编辑器更好的东西,所以我需要完全控制渲染和编辑的东西,所以我有自己的文本编辑器类,它渲染为位图(并捕获鼠标和键盘事件)并模仿 Borland IDE 编辑器功能(包括矩形选择)。我代表这样的语法高亮:missing syntax-highlighting for x86 assembly 因此,如果您想自己编写代码,请创建类似的表,然后解码您获得的字符串类型并相应地选择其颜色进行渲染

标签: c++ components c++builder richedit


【解决方案1】:

TRichEdit 不适合语法高亮(改用类似SynEdit 的东西),但它可以完成。基本上,您需要突出显示所需的文本,然后设置所选文本的属性,例如颜色和格式。您可以使用TRichEdit::SelStartTRichEdit::SelLengthTRichEdit::SelAttributes 属性来做到这一点。也可以直接使用对应的Win32 APIEM_EXSETSELEM_SETCHARFORMAT消息。

请参阅 Robert Dunn 关于此主题的出色文章:“Faster Rich Edit Syntax Highlighting”。 Original article 于 1999 年 10 月首次出现在 C++Builder Journal 中,同时也是 Robert 的 "Yet Another Code Site" 网站上的 available for download(存档在我的网站上)。

【讨论】:

    猜你喜欢
    • 2011-01-19
    • 1970-01-01
    • 1970-01-01
    • 2010-10-25
    • 1970-01-01
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    相关资源
    最近更新 更多