0

テキストボックスからユーザー入力を取得して、メソッドに整数を設定する方法が必要です。問題は、コードを一時停止して入力を許可し、「Enter」キーを押したときに再開する必要があることです。Keydown メソッドは機能しますが、変数ローカルを外部メソッドに設定する場合には機能しません。例えば:

....method()
{
    int num = 0;

    //wait for keydown Enter

    num = Convert.ToInt32(TextBox1.Text);
    //or 
    String s = TextBox1.Text;
    num = Int.TryParse(s);

    ....
 }
4

1 に答える 1

0

通常、プログラムの制御フローを変更する必要があります。クラス レベルで宣言するか、それを渡すハンドラー内からnum依存するメソッドを呼び出します。お気に入り;numnum

  KeyDownHandler()
  {
      MessageBox.Show("Some Message");
      // or if you need something with more flexiblity
      OtherForm of = new OtherForm();
      OtherForm.Show();
      string someVal = OtherForm.TextBox.Text;
      MethodThatNeedsInputFromTextBox(int.Parse(TextBox.Text));
  }

MessageBox.Show メソッド リスト;

http://msdn.microsoft.com/en-us/library/system.windows.forms.messagebox.show(v=vs.71).aspx

ユーザーがメッセージボックスを閉じるまでフォーカスを保持するダイアログオプションなど、デフォルト以外のものを使用することをお勧めします。

于 2012-12-18T22:48:54.740 に答える