ActionScript 3.0 - 否则如果是文本字段的条件

问题描述 投票:0回答:1

我需要制作一个If / Else条件。

我使用Adobe Flash创建表单,在第一页,我需要创建一个登录表单。我想创建输入文本,但必须填写输入文本。如果输入文本为空,我想在必须填写表单时发出警报。在我的想法中,我有一个名为nama.text的输入文本,在输入文本的底部,我放了一个名为next.bt的按钮。然后,我将动态文本“alert.text”放在按钮的底部。

我的问题:

我想,如果用户按下填充的输入文本按钮,用户将直接进入下一帧。但是,如果输入文本为空,我想发出警告“Nama Must Be filled”并让用户留在此页面中,并且在填充Nama.text之前无法进入下一帧。我很抱歉我的英语,但我希望,这里的每个人都能理解我的问题。

if-statement flash actionscript
1个回答
1
投票

“我想,如果用户按下填充输入文本的按钮,用户将直接转到下一帧。但是,如果输入文本为空,我想发出警告”Nama Must Be filled“并让用户留下来在这个页面中,在Nama.text填满之前不能进入下一帧“

(1)不要使用.(例如:fullstop)作为变量名称的一部分。 fullstop对AS3编译器来说意味着什么。通常它表示“属于此变量的属性”。也许重命名为astxt_Nama

(2)你可以查看AS3 manual for Textfield options。其中一个是名为.length的财产。这会告诉您文本字段中存在多少个字符。

所以在你的点击功能处理Next按钮按:

if (txt_Nama.length <= 1) //if smaller or equal to 1
{
    //if Smaller-than or Equal-to 1 then not enough chars typed
    showTheAlert(); //tell AS3 to do this function
}
else
{
    //if larger than 1 then something was typed
    mc_Pages.gotoAndStop(2); //tells content MovieClip go to its frame 2
}

然后创建一个单独的函数来处理警报的显示(不要将此函数放在另一个函数内)

function showTheAlert() :void
{
    trace("No name was typed. Try again...");

    //# Do something here like make some "warning" MClip visible
    //maybe... mc_Alert.addChild;
    //or... mc_Alert.visible = true;
} 

(3)我建议你创建一个MovieClip对象来保存你的内容或页面。一个MClip有自己的时间轴,并像Stage一样进入自己的帧。如果你告诉Stage移动到另一帧,那么你的代码可能无效

someMC.gotoAndStop(5); //# Correct... tells MovieClip to move frames. Code works because and MovieClip are on same Stage frame.

gotoAndStop(5); //# Wrong... tells Stage to move frames. Code only works on other frame where it is typed.
© www.soinside.com 2019 - 2024. All rights reserved.