【问题标题】:ActionScript 3 and mxmlActionScript 3 和 mxml
【发布时间】:2012-05-07 15:09:15
【问题描述】:

我的问题是:
我想将 mxml 用于视觉元素...我想以图形方式设置组件并在 as 类中进行编程,因为这对我来说很容易...如何做到这一点???我有两个类:一个 as 和一个 mxml...这是我的代码:

public class chat extends Application{
    private var nc:NetConnection = null;
    public var connect:Button;      
    public var status:Text;

    public function VideoChat(){
        addEventListener(FlexEvent.APPLICATION_COMPLETE, mainInit);
    }

    private function mainInit(event:FlexEvent):void{            
        status.text = "Status quo";

        connect.addEventListener(MouseEvent.CLICK, doConnect);
    }

和mxml:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
           xmlns:s="library://ns.adobe.com/flex/spark"
           xmlns:mx="library://ns.adobe.com/flex/mx"
           minWidth="955" minHeight="600" backgroundColor="#FBF8F8"
           preloaderChromeColor="#CC3535" 
           >

    <mx:Button x="77" y="547" height="19" label="Connect" id="connect"/>
    <mx:UIComponent id="videoReceiveContainer" x="77" y="52" width="500" height="400"/>
    <mx:Button x="507" y="547" label="Play" id="play"/>
    <mx:Text id="status" x="77" y="460" width="501" height="58"/>
    <mx:Button x="297" y="547" label="Publish" id="publish"/>
</s:Application>

【问题讨论】:

  • 问题是什么?什么是不起作用不理解
  • 这是正确的代码吗???因为当我运行它时,它只会播放空白页...
  • 对我来说,它显示了三个定义的按钮,没有别的。您期望它会显示什么?
  • 对我来说这只是一个空白页...之后需要显示三个按钮和一个视频容器...但是您这里没有代码...您是如何运行它的???运行单击项目,运行为和网络应用程序???
  • 你的浏览器中的路径是什么???是 bin-debug/name.mxml???

标签: actionscript-3 flash apache-flex flash-builder mxml


【解决方案1】:

首先,您的 AS3 代码有点古怪。

public class VideoChat extends Application{
    private var nc:NetConnection = null;
    public var connect:Button;      
    public var status:Text;

    public function VideoChat(){
        addEventListener(FlexEvent.APPLICATION_COMPLETE, mainInit);
    }

    private function mainInit(event:FlexEvent):void{            
        status.text = "Status quo";

        connect.addEventListener(MouseEvent.CLICK, doConnect);
    }
}

类的名称必须与构造函数的名称匹配。

二、MXML:

<?xml version="1.0" encoding="utf-8"?>
<local:VideoChat xmlns:fx="http://ns.adobe.com/mxml/2009"
                 xmlns:s="library://ns.adobe.com/flex/spark"
                 xmlns:mx="library://ns.adobe.com/flex/mx"
                 xmlns:local="*"
                 minWidth="955" minHeight="600" backgroundColor="#FBF8F8"
                 preloaderChromeColor="#CC3535" 
                 >

    <mx:Button x="77" y="547" height="19" label="Connect" id="connect"/>
    <mx:UIComponent id="videoReceiveContainer" x="77" y="52" width="500" height="400"/>
    <mx:Button x="507" y="547" label="Play" id="play"/>
    <mx:Text id="status" x="77" y="460" width="501" height="58"/>
    <mx:Button x="297" y="547" label="Publish" id="publish"/>
</local:VideoChat>

如果您注意到,我定义了 XML 命名空间“本地”xmlns:local="*"。并且s:Application 标签已替换为local:VideoChat

最后,您在评论中询问了加载页面的路径。应该是...bin-debug/name.html。此 HTML 文件是一个包装器,用于显示项目的已编译 SWF。

【讨论】:

  • 现在我有一个错误:无法找到组件类“fm.domain.H264”的指定基类“VideoChat”。有什么想法???
  • 当我喜欢你在这里推荐的时候,在 mxml 文件中,在大纲上我没有容器......只是红色!根......也许这就是问题......
  • @Jovan 您的第一个错误与我没有见过的代码有关,所以我不能说。另外,我不明白你说的容器是什么意思。
  • 由于某种原因,包裹是个问题...我重新开始,这次我确实像您所说的那样,一切正常...谢谢 Sam..
猜你喜欢
  • 2011-06-05
  • 1970-01-01
  • 2011-03-29
  • 1970-01-01
  • 2010-10-30
  • 2014-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多