繁体   English   中英

即使不按Enter键,也会检测到

[英]Enter key is detected even when it's not pressed

目前,我有这个:

if ((input.Text.ToUpper() == "FURNACE" || input.Text.ToUpper() == "COAL") && count == 3)
                {
                    end3();
                }
                else
                {
                    MessageBox.Show("Unknown key");
                }

但是,无论我输入FURNACE,COAL还是其他方式,它都仍然会弹出“ Unknown key”。 为什么?

它在KeyUp事件下,如下所示:

private void input_KeyUp(object sender, KeyEventArgs e)
    {
        if (e.KeyData == Keys.Enter)
        { 
          //The earlier code I showed goes here
        }
    }

计数各不相同,if(input.Text.ToUpper ...)之一将计数加一,但从零开始。

输入是一个文本框。

我认为您缺少e.SuppressKeyPress = true; 输入if之后, if在按Enter时它不会在文本中显示为char。

private void input_KeyUp(object sender, KeyEventArgs e)
{
    if (e.KeyData == Keys.Enter)
    { 
        e.SuppressKeyPress = true;
        if ((input.Text.ToUpper() == "FURNACE" || input.Text.ToUpper() == "COAL") && count == 3)
        {
            end3();
        }
        else
        {
            MessageBox.Show("Unknown key");
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM