0

Flex と ActionScript を使用して、ユーザーに 10 個の質問をするプログラムを開発しようとしています。(10 の質問すべてが、4 つの基本的な操作を表す 4 つの異なる関数によって尋ねられます。答え (ブール型) は配列に格納されます。すべての関数が同じになるため、プラス操作の関数をここに配置しました。フォーマット。

protected function ask_plus():Boolean
   {
      var num1:int = math.round(math.random() *100);
      var num2:int = math.round(math.random() *100);
      question.text = num1 + " + " + num2 + "equals = ?";
      var answer:String = new String; //answer will be gotten from the panel where user writes the answer.
      answer = answerInput.text; //i first tried this, but it gets blank answers as false answers.
      if(int(answer) == (num1 + num2))
          return true;
      else
          return false;
   }

私の質問は、ユーザーが入力を完了したかどうかをどのように検出できるかです。event.Keyboard (keyUp) を入力として取得する別の関数を作成してみました。これは私が試したものです。

protected function check_if(e:Event):String
   {
      trace(event.keyCode);
      while(event.KeyCode != 13) //13 representates the "ENTER" button
      {
           trace(event.keyCode); //until user presses enter, the answer to the question must not be returned.
      }
      if (event.keyCode == 13)
           return answer_input.text;
    }

しかし、ここでの問題は、answer_input (textInput) 領域からのイベントでのみ機能するように、この check_if を使用したいということです。私が欲しいのはそのようなものです

 function a(b = 5)
 {
 trace(b)
 }

この関数を a(); として使用すると 5 をトレースします。しかし、この関数を a(10); として使用すると、5 ではなく 10 をトレースします。同じ状況ですが、イベントがあります。次のようなものである必要があります。

 protected function check if(e:answer_input.Event)
 blabla...

か何か。

4

0 に答える 0