3) 输入域文本(input text)
和动态文本一样,它也是textfield对象的一个实例,可以在flash属性检查器中为其设置唯一的实例名,然后就可以使用该实例名来使用相应的方法与属性以改变动态文本的内容与样式,与动态文本的是,它允许用户输入,并且具有剪切、复制、粘贴、全选等编辑功能。
本文所介绍的应用案例中,就是使用输入框文本来让用户输入建立socket 所要连接的主机与端口:
function btnconnect_&#111nclick() {
if(txtport.text < 1024 || txtport.text > 65536){
txtport.text = "";
selection.setfocus("_root.txtport");
txtport.backgroundcolor = "0xff0000";
}else{
if(txthost.text == “default host”){
socket.connect(null, txtport.text);
}else{
socket.connect(txthost.text, txtport.text);
}
}
}
以上语句是btnconnect按钮(应用程序开发组件pushbutton的一个实例)的单击事件处理函数,其中函数名设为btnconnect_&#111nclick,只是为了便于理解,只要在属性检查器中设置btnconnect的click handler(单击事件处理器)到相应的函数。txthost和txtport 分别让用户输入连接主机与端口的输入域(textfield)对象。
当用户单击btnconnect按钮时,首先判断用户输入的端口数是否在1024与65565之间,如果不在,把端口输入框txtport的内容请空,背景变成红色,并用以下语句得到输入焦点 selection.setfocus("_root.txtport") ,让用户重新输入。由于txtport端口输入框的内容必须是数字,所以可以设定用户只能输入数字,同时,当用户再次输入时,把端口输入框的背景变成原来的颜色:
txtport.restrict = "0-9";
txtport.onchanged = txtport_onchanged;
在生成输入框文本时,默认txthost的内容是”default host” ,如果用户在连接前没有改变,则连接web服务器所在的ip地址,如果用户输入了主机,得保证所连接的主机与web服务器在同一ip地址或同一子域。