ActionScript 3.0 :: Loader With Custom Properties?
Oct 15, 2009
Through searching the various forums I have found that Loaders are not dynamic and hence you can not apply custom properties to each instance of them. I miss the old way (as2 way of attachingMovieClip) that you load dynamic content, at least you can apply custom properties, and you can always reference them for each object.
What I'm trying to do is load a group of Images via XML. Each one of those images have a set of information that is associated with them (name, description, etc). I have the images loading in and positioning just fine, however when trying to have a tooltip show the name on Mouse Over, I'm not able to achieve this...
In short. I want to be able to store information for each item so that I can access it. Is there a way to do this in AS3 with a Loader or is there another route I can go? If I do this with Arrays, how do I store the Index of the specific item so I can use that in reference to the position in each array?
Through searching the various forums I have found that Loaders are not dynamic and hence you can not apply custom properties to each instance of them. I miss the old way (as2 way of attachingMovieClip) that you load dynamic content, at least you can apply custom properties, and you can always reference them for each object.What I'm trying to do is load a group of Images via XML. Each one of those images have a set of information that is associated with them (name, description, etc). I have the images loading in and positioning just fine, however when trying to have a tooltip show the name on Mouse Over, I'm not able to achieve this.
In short. I want to be able to store information for each item so that I can access it. Is there a way to do this in AS3 with a Loader or is there another route I can go? If I do this with Arrays, how do I store the Index of the specific item so I can use that in reference to the position in each array?** Should I use getChildIndex() in the function for the Event Listener to reference the data stored in the arrays for each item? If so, how do I do so? ***
PHP Code: num = 0;var titleArray:new Array();function createImage(){ var thumb:Loader = new Loader; thumb.load(new URLRequest(url);
Let me just start by saying this forum is awesome, over the past 3 years I've found nearly all of the answers to my AS questions without posting once... That streak ends today.I'm building a site where the client is going to be able to upload various backgrounds which load depending on which tab they click on.
The class is BigBackground.as. It does the loading of the backgrounds, and then in the .fla I would like to manipulate these "BigBackgrounds" starting with the width. However, even though the width traces correctly from BigBackground.as, the width traces to 0 from the .fla file. I can access width from the class, but how can I access the width & height from the .fla?[code]...
Main movieclip onstage is : design_mc. Within it is a movieclip already in place onstage with an instance name clipart_mc.also loading a ListBox to the stage and each time a selection is made from listbox myLoader9 is used to load selected .swf intodesign_mc.clipArt_mc.Now within each of the .swf files loaded into design_mc.clipArt_mc there is a mc ike to color transform called color_mc.So now the listbox is onstage and I make a selection that places heart.swf inside of design_mc.clipArt_mc. I want to access heart.swf so I did this:
var child:DisplayObject = myLoader9.content.contentLoaderInfo.content.color_mc; var colorTrans3:ColorTransform = new ColorTransform(); var trans3:Transform = new Transform(child);
There's a Loader that I'm filling with different images depending on the button clicked. Now to keep it tidy I'm using the exact same loader. The problem is that no matter what I do to the image, the next image loaded always get's the properties of the previous one. I've used unload and the Loader returns 0 in width and height, and still the next image get's the previous image's w/h. Othe attempts have been separating it from the parent container and taking it out of the display list, and also using an Event.UNLOAD to make sure the previous image is out before the loading of the new image.
Script is gonne kinda long, but the basics would be these,
BrowserLoad.unload(); BrowserReq = new URLRequest("ImageB.jpg"); BrowserLoad.load(BrowserReq);
[Code]....
I guess it's general question: how can i be sure the image previously loaded in a Loader will not affect the next one coming? (its width and height being 0 has not been enough...)
I have a holder movieclip on screen, then I create a loader, load an external SWF into the loader and addChild to my holder:
var bgloader1:Loader = new Loader(); [code].....
This all works. Now if I want to come back later on and alter the alpha or position I get an error:
//Neither of these work: MyHolder1.bgloader1.alpha=0; MyHolder1.bgloader1.content.alpha=0;
TypeError: Error #1010: A term is undefined and has no properties. at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at flash.net::URLLoader/onComplete()
this is so embaresing and my whole business is suffering from this[URL].. the key point in my TextArea class which extends TextField is to load external swf files and I use the .parent property of the Loader class to access the textfield... with the new security updates coming with 11.2 I cannot access the parent and the whole thing crashes to give you more insight:
imagine that we have file.swf being loaded into the project using the flash.display.Loader class. from the document class of file.swf, I can access the loader like this, all ok till here _loader = this.parent as Loader
[Code]...
every day that one of my clients updates their player to the new version, their website fails. I need to fix this a.s.a.p.
I want to bring an image in from a folder and then display this image in a specifically sized box.[code]So obviously I want the image loaded into a 200 x 200 box (the image is 1200x1200) and scaled proportionately. What do I need to do? The box won't resize at all.
Looking to see if anyone has examples of adding custom properties to the CheckBox object. I'm trying to pass a few other parameters to the click handler to extend the functionality of the cb. [code]
I can't use a "for in " loop to enumerate public properties of a custom class. So I have a class "ClassA" , which has some public properties. if I try :
I am very new to AS3, and I'm confused about how things that would have been simple in AS2 are so complex and tricky now. For example, I want to create a bunch TextField objects that, for some reason, rise up every frame (as in : object.y-=1; ).However, I also need each TextField to reference the TextField that was created just before it.
I tried creating a variable that would hold such a reference : ThisTextField.Ref=LastTextField; but - this returns an "Access of possibly undefined property..." error. It seems I can only have custom properties on mere Objects ! This is annoying because an Object doesn't seem to accept event listeners (remember, I need them to do something every frame). Is there a way to simply set custom properties on my TextFields, without having to use custom packages ? Or is there a way to use event listeners on Objects ? I've read something about strict mode which could allow setting properties on other objects - what are the risks of turning it off ?
I have been stuck on this problem for a while, and wonder if anyone knows the answer. It is concerning accessing some properties of a custom component. I marked the problem with the keyword [PROBLEM] in the following snippets of code.
Is it possible to dynamically name properties on a custom object ?
something like:
Code: o:Object = new Object(); s:String = 'abcd'; // the name I want for my objects property o.[s] = '1234'; // 1084: Syntax error: expecting identifier before leftbracket. trace(o.abcd) // 1234
EDIT I want to do this as an associative array, so if there is a better alternative then I'd be happy with that as well.
In AS2 we can not add methods n properties to built-in classes in the way we do in AS1. Like we would -say- write the custom "isNatural" method on the "Math" class as follows : * The following code is valid in AS1 but not in AS2
[Code]...
As the "Math class" is static internally. We know why we can not add custom methods n properties to every class, as the way we do in AS1. Later I came up with senocular' s very nice tutorial on OOP in AS2. And now i know how we can do it in AS2 style in an efficient n organised way. But i have a problem with the following code. It should not work ! but it does... * Following code is valid for both in AS1 and AS2.
How do I access Stage Class properties in Custom Class? Class: package { import Main; import flash.events.*; import flash.display.Sprite; import flash.display.Stage; public class Run extends Sprite { [Code] ....
Output: TypeError: Error #1009: Cannot access a property or method of a null object reference.
Whenever the trace function runs in init(), the property menuItems returns null. I don't seem to have this problem with other variable types, like Boolean or String. Is this due to the size of the XMLListCollection object? How can I set up this SubNavBar custom component with XMLListCollection property and bind it to a control in the component?
I am implementing a scrollbar using a custom embedded image using my CSS stylesheet. This is a very simple, thin scrollbar. I would like to configure this scrollbar using CSS properties at runtime, but so far I have been unable to do so. I know it can be done because I've seen examples of it in the net, but no code to review.
I'm trying to make a simple flash application providing interface for taking tests as a high school assignment. One of the requirements is to use an XML file as data source.Now, having a List component bound to the XML file with questions consisting of data such as question body, question type (ie. single choice, multiple choice, open, image etc.) and possible answers (where applicable), I was wondering if I could add some additional data (and what is the best possible way to do so) to each question upon its transfer to the List component.
I am trying to achieve two main goals with this: firstly, to mark the questions to which an answer has already been given, like with such code in ItemRenderer class: <s:Label color="{data.color}" text="{data.label}"/> Where data.color would be set whenever the user gives an answer to a question. Secondly, while at it, I thought of such possibility as a great way to store answers given to particular questions. In this case, the Class of the answer object would have been Object, since there has to be many type of questions (where the answer could also be a Bitmap for example).
Given this:public namespace foo;foo var bar:String = "baz";We can access the property "bar" like so:[code]It gives me the following error: ReferenceError: Error #1069: Property foo::bar not found on MyClass and there is no default value.On further inspection of the foo namespace I can see (in the debugger) that the URI is in the format {package}:{type}/{name}. If I try to replicate this by doing the following:[code]Does anyone know if it is possible to get access to namespaced members like this? I don't have compile time access to the namespace, but I can look up it's uri (and prefix) dynamically at run time.
I have just created a custom AS3 Component to use in an MXML project.[code]but then i lose some re usability.What do i need to do to be able to set properties from mxml?
I need to create a custom Object that basically stores some custom parameters (properties?), which I have successfully done, and the code below works fine.
PHP Code: myObject = new Object(); myObject.nameLabel = "New Releases"; myObject.artOrientation = "portrait"; myObject.artAmount = 5;
I find the new compiler and debugger capabilities very useful, since I'm not the most detail-oriented, so I (usually) like that Flash forces me to strict-type my variables and such. Anyway, I was wondering if it's a "best practice" to strict data type a custom objects' properties, and if so, how to do it in the logic above? I kept getting syntax errors when I just tried it initially.
I know if I created a custom Class .AS file, I would be forced to data type the properties... but I'd rather just do it "in-line" in my main .FLA file. Also, I know I can just pass typed VARIABLES to the properties... but I'd rather have the properties strict-typed themselves... so if I try to pass a variable as the wrong type, then I would still get an error.
i wonder why i am unable to access the public properties of this custom class the public var w:Number; and the Public var h:Number; i am tracing them and on an instance of the PreLoader() Class.. and ia m getting NAN;
I'm trying to pass some properties to a component I've created in Flash Builder 4. In my example below I want to pass the "label" property to update the label property of the Button.
I need several different scrollpanes in the site, one of which is a typical thumbnail gallery that uses XML to load the thumbnail images and displays full-size images & text when thumbnails are clicked. With a Lynda tutorial I was able to write the appropriate code and use the canned scrollpane in Flash, but even after changing some of the properties I really don't like how it looks. I found another tutorial [URL] that shows a scrollpane I like better (after some modifications), and I've got it working perfectly elsewhere on the site. How I can integrate the XML code I've already written into this new scrollpane so I can replace the canned one? I'm using Flash CS4/AS3 Macbook Pro
This is the code for the canned one with all the XML: var titleArray:Array = new Array(); var descriptionArray:Array = new Array(); var largeimageArray:Array = new Array(); var thumbimageArray:Array = new Array(); var imageNum:Number=0; [Code] .....
I have a loader which loads on a MouseEvent.Click. It uses this for multiple swfs Actionscript Code: myLoader.load(new URLRequest(event.target.name + ".swf")); How can I add a custom preloader to this?
I'm trying to use a custom class to create a mosaic type of gallery, and load jpegs in which some may have different dimensions. I'm using the Loader Class and I can get the content width value of the jpegs I'm loading, but I'm having trouble adding that value to the property of the (custom) object. Here is the Class:
I've been trying to create a simple loader class that loads an image file onto the stage.
Writing the code to perform the task is simple via the main timeline:
Code: var picloader:Loader picloader = new Loader() picloader.load(new URLRequest("photo/1.jpg"))
[Code]....
How should I write the class such that it performs this function? Ideally I would like to specify the file I want to load eg. loadimage("photo/1.jpg") when I run the method.
I have multiple items in my app that I would like the user to click on.Some items are completely different classes.The classes dispatch events and then when the events are captured, some modifications are done to the transform properties of a loosely coupled display object.I want two separate classes to dispatch the same type of event, since I already have an image class that draws images based on a given url... I want the classes to dispatch the events, but then I think I want the difference to be detected when the event comes along... i.e., I would like to recognize the 'origin' or 'sub-type' of the event. Some sort of if/then logic would suffice.