2012-05-07 4 views
-1

Моя проблема заключается в следующем:
Я хочу использовать mxml для визуального элемента ... Я хочу графически установить компоненты и в классе для программирования, потому что это легко для меня ... Как это сделать ??? У меня есть два класса: один, как и один MXML ... Это мой код:ActionScript 3 и 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> 
+1

В чем проблема ** **? Что ** не работает ** или ** не понят **? –

+0

- это код okey ??? Потому что, когда я запускаю его, он просто играет пустую страницу ... – Jovan

+0

Для меня это показывает три определенные кнопки, ничего больше. Чего вы ждете **, чтобы показать? –

ответ

0

Прежде всего, ваш код AS3 является liiiittle немного напуганным.

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 вашего проекта.

+0

Теперь у меня есть ошибка: Не удалось найти указанный базовый класс «VideoChat» для класса компонента «fm.domain.H264». Есть идеи??? – Jovan

+0

И когда мне нравится, что вы рекомендуете здесь, в файле mxml, на контуре у меня нет контейнеров ... просто в красном цвете! Корень .... может быть, это проблема ... – Jovan

+0

@Jovan Ваша первая ошибка связана чтобы код, который я не видел, поэтому не могу сказать. Кроме того, я не понимаю, что вы имеете в виду о контейнерах. –

Смежные вопросы