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); 它将跟踪 10,而不是 5。同样的情况,但有事件。它一定是这样的:

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

或者其他的东西。

4

0 回答 0