我'尝试'开发一个程序,它将使用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)
}
如果我将此函数用作();它会跟踪5.但是如果我使用这个函数作为(10);它将追踪10,而不是5.相同的情况,但有事件。它必须是这样的东西:
protected function check if(e:answer_input.Event)
blabla...
或其他什么。