2009-12-14 69 views
0

我在Visual Studio中使用Flex SDK,并试图动态地将一个按钮添加到舞台上。这是我正在做的一个简单的例子。如何使用as3将一个按钮添加到舞台上?

public class Test extends Sprite 
{      
    public function Test() 
    { 
     init();     
    }                

    private function init():void 
    { 

     var btnBrowse:Button = new Button();           
     btnBrowse.label = "Browse"; 
     btnBrowse.x = 0; 
     btnBrowse.y = 0; 
     btnBrowse.width=100; 
     btnBrowse.height=100;   
     addChild(btnBrowse); 
    } 
} 

似乎没有任何东西显示出来,屏幕仍然是空的。我正在导入mx.controls。*作为按钮。这可以创建一个问题,因为我不使用mxml只有as3?

+0

我假设你还创建了一个测试实例,并将其添加到显示列表中? mxml与as3不应该是一个问题 - 所有mxml在编译过程中都会被转换为actionscript,所以在actionscript中你不能在mxml中做任何事情。 – 2009-12-14 22:57:02

回答

1

您不能在AS3 Only项目中使用Flex框架控件。如果你正试图避免MXML那么只需要创建一个新的Flex项目中,根标签是这样的:

<FooApplication xmlns="*"/> 

,并创建一个新的AS3类,如:

package { 

import mx.core.Application; 

public class FooApplication extends Application { 

// now override something like createChildren to add a button. 

} 
} 
+0

如果我理解你的话,那么我只有as3的选项是我必须创建一个精灵并绘制我自己的按钮或在Flash中创建控件并导出一个.swc。 – Mike 2009-12-15 14:32:49

+0

有很多方法只用AS3创建按钮。但大多数都是痛苦的 - 因此大多数人只是使用Flex的原因。有一些轻量级的AS3框架,您可以像Reflex一样查看。 – 2009-12-16 14:32:30

0

尝试从雪碧改变基类到画布。

相关问题