【问题标题】:Getting issue with CComboBox MFC controlCComboBox MFC 控件出现问题
【发布时间】:2013-02-01 09:07:08
【问题描述】:

我在 MFC 中有一个带有下拉属性的组合框。

当我打开一个包含此组合框的对话框时,该组合框中的文本会突出显示。当我点击它时,就在这个组合框的编辑字段中的最后一个字符旁边,假设我插入了一个字符 C,它写在末尾,但光标移动到开头。

这种情况只发生过一次,如果我将光标移动到结束并开始写入,一切正常。

当焦点丢失时,再次编辑它会导致上述问题。

在代码中也没有对此控件进行任何特殊处理。

我不明白,为什么会这样?

任何建议或建议都会有所帮助。

谢谢

【问题讨论】:

  • MESSAGE_MAP 对组合框控件 id 有什么影响?
  • 它的id是“8002”,只处理一条消息“ON_CBN_SELCHANGE”
  • 是所有者抽奖组合吗?
  • 不,它不是 ownerdraw 类型

标签: visual-c++ mfc


【解决方案1】:

您可以在组合框的 ON_CBN_EDITUPDATE 处理程序中尝试此操作-

{

DWORD dwSel =  m_mycombo.GetEditSel();
// Only do this if no characters are selected
if( LOWORD( dwSel ) != LOWORD( dwSel ) ) return;

// code you have added handler for

m_mycombo.SetEditSel( LOWORD( dwSel ), LOWORD( dwSel ) );

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-22
    相关资源
    最近更新 更多