代码之家  ›  专栏  ›  技术社区  ›  Alessandro Jacopson

在Windows RichEdit20w控件中选择单词的规则

  •  3
  • Alessandro Jacopson  · 技术社区  · 6 年前

    在MFC应用程序中,我有一个 .rc 包含此内容的文件:

    IDD_PROP_TEXT DIALOGEX 0, 0, 210, 164
    STYLE DS_SETFONT | WS_CHILD
    FONT 8, "MS Sans Serif", 400, 0, 0x0
    BEGIN
        CONTROL         "",IDC_EDIT,"RichEdit20W",ES_MULTILINE | ES_AUTOHSCROLL | ES_WANTRETURN | WS_VSCROLL | WS_TABSTOP,1,3,207,158
    END
    

    当我双击一个字符串 first_second 在富编辑控件中,我只选择 _ 或者第二部分 γ 或者只是 γ ,取决于我双击的位置。

    在下面的屏幕截图中,我双击了 second .

    enter image description here

    我想改变这种行为 γ 不应视为中断字符。

    我该怎么做?

    我找到了 ECO_AUTOWORDSELECTION CRichEditCtrl::SetOptions 但它不能解释破译规则…

    1 回复  |  直到 6 年前
        1
  •  2
  •   xMRi    6 年前

    你应该使用 EM_SETWORDBREAKPROCEX .

    用你自己的 EditWordBreakProcEx 应该可以定义自己的规则。

    国旗 ECO_AUTOWORDSELECTION 只需设置双击选择单词的功能。

    我不确定这也适用于这个案件,但是阅读 this 缝缝针指向我假定的答案。