4) 选中 ui层,在工具箱选中文本工具,并在属性检查器中设置属性show border around text为真、文本类型为dynamic text(动态文本)、文本为multiline(多行),在stage (舞台)上半部分画一个大的文本区域,把其实例名设为 txt。如图三,现在注意到,txt文本域具有了边框和白色背景,我个人不太喜欢白色,能不能改变文本域的背景色呢?
当然能,可以这么说,在flash mx中,能够看到的都有方法来改变,我们就把txt文本域的背景变成 #bbbbcc颜色吧,请在程序的 [flash创作时对象的初始化]部分加入下面语句:
txt.backgroundcolor = "0xbbbbcc";
通过 control -> test movie 菜单(或 ctrl + enter快捷键)预览,您会看到txt文本域的背景已经变成所期望的颜色。
5) 通过 window -> componets 菜单,打开componets(组件)面板,选择scrollbar组件拖到舞台上的txt文本域上,当释放鼠标时,两者会自动结合,如图五。到属性检查器中,scrollbar组件的target textfield属性为 txt ,同时给scrollbar组件起一个唯一的实例名,如scrollbar ,由于当信息显示满一屏时,需要通过滚动条查看以往的信息,所以需要在程序一开始对scrollbar进行设置以激活它,在程序的 [flash创作时对象的初始化]部分加入下面语句:
scrollbar.setscrollproperties(10, 10, 20);
6) 从工具箱中选择文本工具,在属性检查器中设置属性show border around text为真、文本类型为input text(输入框文本)、文本为single line(单行),在stage(舞台)上txt文本区域的下面靠左画两个文本域,把其实例名分别设为txthost和txtport,如图三:
另外,在属性检查器中,设置txtport的maximum characters(最大长度)为5(因为端口数最大为65535),设置txtport只能输入数字,我们可以在属性检查器中的character按钮设置限制,我们这里用actionscript在运行时设置(也可以在属性检查器中设置),在程序的 [flash创作时对象的初始化]部分加入下面语句:
txtport.restrict = "0-9";
txtport.onchanged = txtport_onchanged;
并且设置txthost的内容为 ”default host”, txtport的内容为 ”6666”。同时, 由于用户在txtport中键入错误的端口数时,txtport的背景将变成红色(详见前面输入框 文本(input text)的介绍),当用户再次键入时,背景颜色将变回原来的白色,这 txtport的onchanged事件中得以实现。 7) 从componets(组件)面板上,选择两个pushbutton组件拖到舞台上的txt文本域的下部靠右的位置,水平与前面两个输入框文本对起。
第一个pushbutton按钮的实例名设为 btnconnect ,label(标签)设为 connect, click handler(单击事件处理函数)设为btnconnect_&#111nclick 。第一个pushbutton按钮 的实例名设为 btnclear ,label(标签)设为 clear,单击事件处理函数设为 btnclear_&#111nclick ,如图四:
通过完成以上的步骤,我们已经建立了flash客户端的用户界面。现在我们来在程序的第二部分[flash运行时对象的初始化]中,创建并初始化相应的对象:
mytextformat = new textformat();
socket = new xmlsocket();
socket.onconnect = myonconnect;
socket.onxml = myonxml;
socket.onclose = myonclose;
以上语句中,第一条语句生成一个textformat(文本样式对象)实例mytextformat,以达到以不同颜色显示不同类型数据的目的(详见前面动态文本(dynamic text)的介绍 )。接着生成一个xmlsocket对象实例socket,并分别设置其onconnect、onxml、onclose事件的处理函数。
以下我们最后只剩下编写各种对象的事件处理函数了,由于在本文的第二部分里,就有关的技术已经做了相当详细的介绍,并且您可以同时参照本文附带的程序源码,为了节省篇幅,这部分将不再做进一步的介绍了,如果您在实际使用中,有问题您可以给我发 e_mail: yz2yz@etang.com。
现在程序已经完成了,在您的web服务器上启动服务端模拟程序,然后通过浏览器连接到相应包含flash客户端的页面,单击connect按钮,如果没有其他的意外,您就会看到客户端正常地运行了。如果为了测试的方便,您可以在本地机启动服务端模拟程序,然后通过单独的flash player 6来打开,在txthost中键入“127.0.0.1”,这样您就省了架设web服务器的麻烦。祝您顺利!
点击 http://www.pconline.com.cn/pcedu/empolder/wz/xml/10206/other/20020620xmlsocket.rar">下载源代码