c++ - CMFCToolBar ComboBoxEdit 句柄删除按钮

标签 c++ mfc

CMFCToolBarComboBoxEdit 处理 BackSpace 按钮,但不处理删除按钮。 除了 PreTranslateMessage 之外,还有什么方法可以处理删除按钮吗? 如果是,这是什么方式? 如果不是,那么如何获取控件中的当前光标位置以及如何使用其索引删除特定字符,以便在未选择任何内容的情况下删除光标右侧的字符? 提前致谢。

最佳答案

是的,使用 PreTranslateMessage。如果您检测到应该处理的序列,请调用:

if (..) // Check if you have a message that should 
        // be passed to the window directly
{
  TranslateMessage(pMsg);
  DispatchMessage(pMsg);
  return TRUE;
}

您始终可以在 PreTranslateMessage 中执行此操作,当您检测到该消息应由默认控件处理,而不应由执行 的窗口链中的任何其他控件处理时>预翻译消息。如果您打开了一个组合框并希望在内部处理 Page Down/Up 而不是由 View 或任何加速器处理,这也很有用。

关于c++ - CMFCToolBar ComboBoxEdit 句柄删除按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42607823/

相关文章:

c++ - vector 预分配无法正常工作

c++ - MFC CDateTimeCtrl 显示无

c++ - 如何从函数中获取一 block 内存并将其写入文件?

c++ - 如何从模板类 typedef 方法的返回类型?

java - 函数调用之间的 OR 运算符

c++ - 如何使用转到文件的第 m 行和第 n 个字符?

c++ - 在 MFC CLR 项目上调试断言错误

c++ - 如何正确发送 CMFCMenuButton 选择的 ID 到消息映射?

c++ - 启动另一个应用程序作为弹出窗口

c++ - 将面板添加到 MFC 应用程序 (Visual Studio C++)