0

現在、私はこれを持っています:

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

ただし、FURNACE、COALなどを入力しても、「不明なキー」が表示されます。なんで?

これは、次のような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 ...)の1つがカウントに1を加算していますが、ゼロから始まります。

入力はテキストボックスです。

4

1 に答える 1

0

e.SuppressKeyPress = true;入力した直後に行方不明になっていると思います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");
        }
    }
}
于 2012-08-04T22:39:13.657 に答える