【问题标题】:CComboBox automatically selects text after call to MoveWindowCComboBox 在调用 MoveWindow 后自动选择文本
【发布时间】:2009-03-09 14:44:52
【问题描述】:

我目前在CFormView 中使用CComboBox 时遇到了一个非常奇怪的问题。

将字符串添加到组合框(使用WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL | CBS_DROPDOWN | CBS_SORT | CBS_AUTOHSCROLL 创建)后,我通过CComboBox::SetCurSel 选择一个条目,并通过OnSize() 派生类的OnSize() 处理程序中的MoveWindow 调整组合框的大小@ 派生类。

只要我包含对MoveWindow 的调用,组合框编辑部分中的整个文本就会被选中。如果我删除对MoveWindow 的调用,则不会选择文本。这不仅适用于一个,而且适用于所有使用的组合框。

我在这一点上不知何故迷路了。任何提示都非常感谢!

【问题讨论】:

    标签: c++ winapi mfc ccombobox


    【解决方案1】:

    选择所有文本是组合框获得焦点时的标准 Windows 行为。我猜 MoveWindow 正在重置控件上的焦点。

    尝试使用 CComboBox::SetEditSel 删除 MoveWindow 之后的选择。

    【讨论】:

    • 好的,谢谢。我以为我做错了什么,错过了阻止选择文本的选项。
    猜你喜欢
    • 1970-01-01
    • 2014-02-19
    • 2022-10-21
    • 2016-07-29
    • 2021-03-31
    • 1970-01-01
    • 2016-07-08
    • 2012-10-28
    • 1970-01-01
    相关资源
    最近更新 更多