mfc - 在 Windows RichEdit20W 控件中选择单词的规则
问题描述
在 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
当我像在 Rich Edit 控件中那样双击一个字符串时,我只选择了 之前的第一部分_
或之后的第二部分,_
或者只是_
,这取决于我双击的位置。
在下面的屏幕截图中,我只是双击了second
.
我想改变这种行为,_
不应该被视为一个破坏性的角色。
我怎样才能做到这一点?
我ECO_AUTOWORDSELECTION
在CRichEditCtrl::SetOptions找到了,但它没有解释打破规则这个词......
解决方案
您应该使用EM_SETWORDBREAKPROCEX。
使用您自己的EditWordBreakProcEx应该可以定义您自己的规则。
该标志ECO_AUTOWORDSELECTION
只是设置双击选择单词的功能。
我不确定这是否也适用于这种情况,但阅读此接缝以指出我的假设答案。
推荐阅读
- python - 阅读使用python不断更新的Excel工作表
- angular - 不使用 switchMap 调用 Angular 异步验证器
- kubernetes - 设置主机路径卷可以消耗多少空间的限制
- vue.js - 为自定义事件使用 Vue 原型
- python - 如何嵌套方法以在 Python 中安全地执行 SQLite 事务?
- ios - 在弹出视图控制器中更新其值时如何更改 UIButton 文本?
- javascript - 滚动线动画 - HTML,CSS,JS
- sql - SQL - 通过连接两个基于 Start 和 End 值的表然后连接基于 Start 和 End 值的行来创建一个新表?
- reactjs - 如何在 Reactjs 上运行一个函数并每 5 秒更改一次内容
- c# - XML 前缀 soap:Body 到 soapenv:Body