使用MFC中的CRichEditCtrl复制快捷方式操作

时间:2015-02-17 09:03:24

标签: visual-c++ mfc win32gui mfc-feature-pack

我对MFC很新。我正在为Copy对象提供以下SelectAllCRichEditCtrl个快捷方式的代码。

ON_COMMAND(ID_EDIT_COPY, OnCopy)
ON_COMMAND(ID_EDIT_SELECT_ALL, OnSelectAll)

但是我无法在我在这里写的函数中捕获复制(Ctrl+C)和SelectAll (Ctrl+A)的断点,因为它没有被执行。

这里CRichEditCtrl对象是只读的(文本用于读取,不允许修改)。

我还想为CRichEditCtrl对象提供带鼠标的文本选择功能。

关于如何实现这个的任何想法?

1 个答案:

答案 0 :(得分:0)

不会使用我们知道的WM_COMMAND值执行此操作。此外,还可以在内部检查击键并在内部进行处理。

在内部,有一些名为WM_COPY和WM_PASTE的特殊窗口消息用于与剪贴板交互的一些操作。

Afaik选择(全选)完全是内部完成的。您可以尝试子类化RTF控件并拦截EM_SETSEL消息。

如果要拦截击键,可以使用PreTranslateMessage,也可以再次对RTF控件进行子类化。