【问题标题】:Win32 Enter while in textbox triggers ok buttonWin32在文本框中输入时触发确定按钮
【发布时间】:2014-05-25 17:57:43
【问题描述】:

标题不是很明确,但这是我的问题:

我有一个基于 MFC 的应用程序,其中包含一个对话框:

  • 1 文本输入;

  • 1 个确定按钮;

  • 1 个取消按钮;

  • 1 个带箭头的按钮用于输入下一个值

当文本框获得焦点时,按下 Enter 会触发 OK 按钮。为什么 ?文本框有焦点,而不是 OK 按钮,为什么要这样做?

我需要将输入键重定向到箭头按钮而不是确定按钮,以便按下输入不会关闭对话框而是转到下一个输入。

请问我为什么可以这样做?如果我在箭头按钮上使用 SetFocus,文本框会按预期失去焦点,这不是我想要的。

【问题讨论】:

    标签: c++ c winapi input mfc


    【解决方案1】:

    您必须将编辑控件的MultilineWant Return 属性设置为True

    【讨论】:

      【解决方案2】:

      如果编辑控件不具有ES_WANTRETURN 样式,则按ENTER 与按对话框的默认按钮具有相同的效果。但是这种样式对单行控件没有影响,所以还必须给控件设置ES_MULTILINE样式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-31
        • 1970-01-01
        • 2012-10-08
        • 1970-01-01
        相关资源
        最近更新 更多