On 1/18/06, Brendan Meutzner <
[EMAIL PROTECTED]> wrote:
Hey Jens,
Thanks for the help. It's now working (sort of)...
If I create an instance of a built-in class (such as Button), the
method below works fine. However, if I try creating a custom Class
(eg. MyCustClass which extends from Canvas) like so:
import custclasses.MyCustClass ;
var newComponent:Object = createInstance("custclasses.MyCustClass");
it doesn't work. I get the run-time error message "Variable
MyCustClass is not defined".
However, if I create a dummy instance of the class in my application
like so:
import custclasses.MyCustClass;
var dummyMyCustClass:MyCustClass = new MyCustClass();
and then create another instance using the createInstance method, it
does work.
Ideas?
Thanks,
Brendan
--- In flexcoders@yahoogroups.com, Jens Halm <[EMAIL PROTECTED]> wrote:
>
>
> > Hi All,
>
> > I'd like to provide a String value which represents the DisplayObject
> > class I want to create dynamically with addChild. Has anyone
> > accomplished this?
>
> You mean like this?
>
> public function createInstance (className : String) : Object {
> var MyClass : Class = getClassByName(className);
> return new MyClass();
> }
>
>
> Btw.: what I really miss is a method createInstance(args : Array) in
> the Class class, so I could easily provide an arbitrary number of
> constructor arguments not known until runtime, like this:
>
> public function createInstance (className:String, args:Array) : Object {
> var myClass : Class = getClassByName(className);
> return myClass.createInstance(args);
> }
>
> Class.createInstance(args:Array) would be the constructor equivalent
> of Function.apply(scope:Object, args:Array). If I use Function.apply
> after I created an instance the constructor would be called twice
> which would be quite dirty.
>
> Consider this as a feature request... ;)
>
>
> Jens
> www.oregano-server.org
>
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/flexcoders/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
--
j:pn
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
SPONSORED LINKS
Web site design development | Computer software development | Software design and development |
Macromedia flex | Software development best practice |
YAHOO! GROUPS LINKS
- Visit your group "flexcoders" on the web.
- To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
- Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.