A few weeks ago, I started rewriting the V3 components from AS2 to AS3. Since I didn’t find any documentation from Adobe on how to create components for the new Flash CS3, I assumed it is done just like in the previous version of Flash. So I started working on AS3 version of LoaderProV3 component and managed to create a working version for AS3. I wrote a class and then, created the .swc file. So, I was happy that I managed to create my first Flash CS3 component, using AS3 coding. The loader does not have any assets so I didn’t bother with the fact that I could edit the assets for Adobe’s new Flash UI components simply by double clicking on the instance on stage.
The next component, how ever, required to do just that. It was a slider component with skinning possibilities, so the user should be able to edit the component’s assets on the stage. A created the component’s .swc file, but it didn’t work like the new Adobe components. After digging a bit through Adobe’s documentation I found out that Flash CS3 now supports .fla based components. Basically, you wouldn’t have .swc file, but a .fla file, containing all the component’s required classes and assets. Now, the big question: how on earth would you do that ? Adobe’s documentation doesn’t really say anything about component creation, only about how to skin the existing components.
I posted a question on one of Adobe’s forums, but it didn’t get answered. I don’t know, maybe I wasn’t clear enough or I just didn’t post it on the right forum. Anyway, I was able to find some valuable information on a few blogs. A step-by-step tutorial on how to build fla-based components for Flash CS3 can be found here (FlashBrighton) and here (you should read the comments too).
Currently, Flash CS3 supports two types of components: swc-based components and .fla based components. If your components don’t need any assets or skinning, probably the traditional .swc components will work just fine. These types of components are created exactly the same way as in Flash 8 or earlier. But if you create visual components, which are skinnable, you should probably choose the .fla based components, since the new way of editing assets is pretty convenient to everybody.
How to create a simple .fla component
In case of .fla based components for Flash CS3, there are a few more steps to follow:
- First, create your component’s class and .fla files. The .fla file must contain whatever assets you need for the visual part of the component, a component shim, a component avatar and the movie clip corresponding to your component (with the correct linkage id and class associated).
-
In your .fla file create any artwork and skin clips you need for your component. Give them the linkage ids you need. Next, create an empty movie clip which will have the same name as your component. Don’t forget to give it a linkage id and associate your component’s class to it (Properties panel).
-
The component’s avatar is basically the bounding box. To create this avatar, you need to create an empty clip and draw a rectangle into it at the x=0 and y=0 coordinates. Then, drag the avatar clip from the Library into the first frame of the movie clip corresponding to your component. This avatar must be the only clip/shape on the first frame of your component’s clip.
-
The component shim is a compiled clip which has to have embedded into it all the classes your component needs. To create a component shim, you should open a new document and create as many empty clips in the Library as classes you need to embed (if you do not embed the classes into the component shim, you will have to give your component’s users the .fla file along with any .as file it uses). For each movie clip, you have to set in the Properties panel, the class to which it is associated (in case your component uses more than one class). Finally you’ll have to create one more clip and, in the Class edit box, of the Parameters panel, you should write a non-existing class name (you could use even “ComponentShim”, though, I belive it is better to use a different name for each component shim you create for your components). Convert the last clip into a compiled clip and copy it into your component’s .fla file. For any other details about the component shim, you should consult this article on www.flashbrighton.org.
-
Next, on the second frame your component’s clip, you need to place all the assets of the component: movie clips for the different states of the component, different artwork you need, a focus rectangle (if your component needs one) and the component shim.
-
Finally, right-click on the component’s clip and open the Component definition panel. Here, you need to set the main class of your component, check the Display in Components panel checkbox (otherwise it won’t appear in the Components panel) and set the Edit frame property to 2 (that way, when the user double clicks on your component, the contents of the second frame will be displayed – the component’s assets). In addition, you may set an icon for your component (click the button under the “Description” label and choose a predefined icon or your own custom one, or you can also use the [IconFile("iconName")] meta tag in your component’s class) and a live preview (if your component needs one).
-
To set up a live preview from an external .swf file, you need to create a new .fla document which has the fl.livepreview.LivePreviewParent class as document class and place your component on the stage (which has the same height as your component) at the (0, 0) coordinates; next, create the .swf file and, in the original .fla file of your component, give the new .swf file as your component’s live preview, in the Component Definition panel (I usually choose Live preview with .swf file embedded in .fla file).
-
After you have finished, you need to place the .fla file in the flash components folder
[Windows 2000/XP] Documents and Settings\userName\Local Settings\Application Data\Adobe\Flash CS3\language\Configuration\Components
or
Program Files\Adobe\Adobe Flash CS3\en\Configuration\Components\ – this path works too.
Fla based complex components that contain other components
In case you develop a component that makes use of other components embedded in it (the case of Adobe’s TextArea component which is composed of the TextArea component and the UIScrollBar component), one problem arises.
I’ll give you an example:
If you create a scroll bar component you need to put it into the flash components path to be able to access it from the Components panel. Next, you decide to create a TextArea component which uses the scroll bar component (it will be embedded into the TextArea .fla file). After you finish developing the component, you copy the .fla file to the flash components path. Next time you start Flash CS3, in the Components panel, you will see one TextArea component and two scroll bar components.
This happened to me while I was working on a similar component (it uses another component previously developed by me). I looked into the new Adobe UI components sources and it looks like all the UI components are placed into a single .fla file. Looks like this is the case if you develop visual components that contain other visual components and you want your users to be able to edit the assets by double clicking on the component. This will take them into the second frame of the component, where all the assets are, along with instances of the other components you need. Next, they are able to double click on those components too, to edit their assets. This would be the correct way to customize the component assets but it comes with the previously mentioned cost: you would have to deploy your component along with the other components it uses with a single .fla file. So, if someone would like one of your components used by that complex one that you’ve created, he/she would have to get the .fla file of your complex component, along with all the components it uses.
A work around this inconvenience would be to include the other components into the compiled clip of the component shim, so your component will still have access to those other components but your component’s users wouldn’t be able to directly edit the assets of the other components.











it’s weird that adobe are leaving it to the community to unpick this new component model, so thanks for sharing your findings. i wonder when adobe will see fit to give us an official line on this?
Thank you for writing. We’ve discovered many things during the development of the V3 components. The community is a big help always. There are few useful info on Adobe but we hope that we will be able to release the AS 3.0 version working as the CS3 components are.
Indeed, it’s a pity that Adobe left out this (important) part of their documentation. Maybe they would like the ActionScript developers to switch from Flash to Flex… ok… but what about the Flash users ? In case of Flash CS3, most of them are (or will be) probably designers, since Flash is more designer oriented than programmer oriented and Flex is more programmer oriented than designer oriented (at least this is how me and a few other colleagues believe). Anyway, if this would be the case, those designers would need plenty of third party components, since Flash CS3 comes with only a few UI and media components. Who would write those components ? How will they learn to correctly create fla based components for Flash CS3 ?
Yup its good that im not the only one who couldnt find any documentaion about components, good work mate.
I’m sure that sooner or later we will figure out how to build components for Flash CS3 designers. And I’m sure that the community will find solutions to this issue. However, any suggestions, ideas and messages will be appreciated
.
I was wondering if by using this method to create a component in CS3 if I would be forced to export as version 9. I would love to be able to build a component in the CS3 authoring environment but I can’t be restricted to using version 9 as a publish setting.
Thanks! Great article.
Well, Darren, if you create components using Flash CS3 and ActionScript 3.0, you won’t be able to use them in older versions of Flash. But you can still create ActionScript 2.0 components using Flash CS3 and install them in Flash 8 (I’ve already tried it).
Finally, Adobe did post a report on how to create fla based components for Flash CS3. Here’s the link to the page: http://www.adobe.com/devnet/flash/articles/creating_as3_components.html
I am facing a problem with component development where my component contain other components. After pasting my fla file to Components folder, Flash shows other components which are used in my component. I tried your workaround but it doesn’t works for me. Could you please explain a bit on how not to display the default components which are used in my component.
What I have done:
I created a Component Shim for my component by
1.creating a blank MovieClip
2.naming its class as MyComponentShim
3.then converted it to Compiled clip
4. Rename as MyComponentShim
5. Replace default Component Shim with the one I created above and then compile my component again.
6. Paste it to Components Folder.
Please help me with this. I don’t want to display the default components used by my Component.
Looking forward to your response.
–
Chetan Sachdev
tjomwyoglmrr
Good job. It still seems that alot of people are having trouble with this so I wrote a small lightweight article on it aswell.
http://redbjarne.wordpress.com/actionscript-3-0-custom-components-from-hell/
Great job. Thank you for sharing this information. I found it very needful for me. But what do you think about the new Avatar Movie site?
I really like the Avatar 3D movie, particularly the story line, not only it brings a totally new sensation but eye opening thoughts of humanity. I heard the New Avatar 2 is comming soon, cannot wait to see it again…!
Always looking for something new to own. Looks like this might be it.
How about another article like this? I thought it was cool. I took creative writing back in college, and this has the few most critical segments of a good article, engaging and fun to read. Thanks.
F. Wilson
cd discount
Helo there, well I think that your statement is rather incisive as it highlights plenty of great data. Anyway, was curious whether you would want to interchange web links with my web portal, as I am looking to establish web links to further broaden and gain better web exposure for my website. I do not mind you pointing my contacts at the main page, just having this web links on this particular web page is more than adequate. Moreover, please message me back at my site if you are interested in swapping links, I would really appreciate that. I would like to thank you and hope to get a reply from you very soon!
Rarely I can find good theme for WordPress. There are enough good themes, but very inconvenient in settings. I have installed recent versions of Crackatoa, Aparatus, Jarrah, Rockwell, also I installed also BAsense – simple, but optimized for adsense. Rarely you can find something normal but good in options.
nice information bro, its just that I needed.
Thanks for this tutorial. Are you going to post a fresh Photoshop tutorial any time soon?
Hi all, i am from spain so my english knowledge is not that impressive. Please dont blame me. I read online journals to improve my english and i have to say that your blog was perfect readable for me, because the english is really clear and all the article are perfect readable. I will come back, to improve my english even more. Thanks a lot
Works to this day like a charm. Thanks!
howdy this is a tremendous web log, would you think about being a guest writer on my web logs?
Find out where to buy MDMA online. Discover the best MDMA to buy online.
Awesome. Thanks for writing this. It is always great to see someone educate the public.
Is this blog still active? I cant get any update via rss
Article syndication must 1st be carried out based on quality. Top 3 article publication sites will offer you more market dominion than the rest 300 directories, put together.
Compassionate for the vast review, but I’m truly the new Zune, and comic this, as well as the fantabulous reviews additional grouping have typed, module service you determine if it’s the starboard selection for you.
Thank you for sharing this information. I found it very needful for me. Wonderful job.
That was one with essentially the most beneficial posts I’ve observed in a prolonged prolonged time. An entire complete lot appreciated, I’m going to have to hang round right here far extra.
I don’t accept this particular blog post. Nonetheless, I did researched with Bing and I’ve found out that you are correct and I was thinking in the incorrect way. Carry on writing top quality articles like this.
I use internet download manager to download flash movies directly, much simpler
Sometimes the issue can be solved by switching off the console. I will advise you to switch off for 20 to thirty minutes first. The strategy right here is that the console may just be overheat. The issue may well be solved itself when the console cools down. When you have switched off the PS3, you can also check the cables to make certain that they are connected correctly. You might also want to take the tough drive out to set it back again once more.
Learn more PS3 tips
hi there admin. i must say that you have a very nice blog(Create .fla components for Flash CS3 Jumpeye Flash Team Blog) and i was actually impressed with it.i am a newcomer to blogs and i would like to know other blog writers and learn from them. My blog(http://www.hetsteunpunt.nl/forum/index.php?s=f9583734f09b0db33787b9eb5d9162c2&showuser=88615) is very new and i’m still figuring out to work with it. i hope i will get to learn a good deal from blog writers like you. cheers for this well-written post.
Hey just wanted to give you a quick heads up and let you know a few of the pictures aren’t loading correctly. I’m not sure why but I think its a linking issue. I’ve tried it in two different browsers and both show the same results.
Greetings I located your site by mistake when i was searching Google for this topic, I have to tell you your site is definitely very helpful I also really like the layout, its superb!
don’t normally recommend other sites but I will break my trend for this
Thanks so much for writing all of the excellent info! I am looking forward to seeintg more blogs!
It is possible to absolutely notice the passion inside the perform an individual compose. The particular market expectation regarding a lot more zealous copy writers for instance an individual which aren’t frightened to cover where did they feel. Constantly stick to the coronary heart.
I wanted to visit and allow you to know how really I cherished discovering your site today. I might consider it an honor to operate at my office and be able to utilize tips shared on your website and also engage in visitors’ opinions like this. Should a position regarding guest article writer become available at your end, remember to let me know.
Today, while I was at work, my cousin stole my iPad and tested to see if it can survive a forty foot drop, just so she can be a youtube sensation. My iPad is now destroyed and she has 83 views. I know this is completely off topic but I had to share it with someone!
See your favorite Movies on freemoviestream
You got a cool blog going on here, how can i get my website to be like yours? ; http://removewisdomteeth.net
Have you ever thought about adding a little bit more than just your articles? I mean, what you say is important and all. However imagine if you added some great visuals or videos to give your posts more, “pop”! Your content is excellent but with images and clips, this blog could certainly be one of the very best in its niche. Wonderful blog!
Get cheap used iPads for sale online here. Find the best places to sell and buy used iPads on sale and compare cheap iPad prices and deals.
I have been browsing online more than three hours today, yet I never found any interesting article like yours. It is pretty worth enough for me. Personally, if all website owners and bloggers made good content as you did, the internet will be a lot more useful than ever before.
I’ve been surfing online more than three hours as of late, yet I by no means discovered any interesting article like yours. It is lovely worth sufficient for me. In my opinion, if all web owners and bloggers made good content as you probably did, the internet will be a lot more helpful than ever before.
Pricey light bulbs, fuel efficient cars, solar panels its all a pretty unaffordable luxury for most Americans. In texas, there barely starting to make an industry that will employ Americans to create solar panels but it still will not reduce the fees all together. Lets face it if we can get water and electrical energy for free the government could be out of small business that is why they would like to charge you for air likewise..
Howdy this is a little bit of away subject however i had been wondering in the event that weblogs make use of WYSIWYG writers or perhaps if you have to personally signal together with Html code. I am beginning a blog shortly however have no html coding expertise so I wanted to obtain assistance through someone together with expertise. Any assist could be significantly valued!
Hmmm I can’t seem to access some of your hyperlinks. I wonder if it is my Opera browser or your website.
Writing a TV series is challenging, and years of toil and sweat go into crafting a series that appeals to the masses and keeps them hooked from the first episode to the last.
Good day very nice site!! Guy .. Beautiful .. Amazing .. I will bookmark your web site and take the feeds additionally…I am satisfied to find numerous helpful information here in the submit, we’d like work out extra techniques on this regard, thanks for sharing.
How long have you been employing this theme? I became searching for something similar to it pertaining to our blog site.
There is just this idea splendid internet site and desired to exhibit my admire using this comment.
Hiya! I just would like to give an enormous thumbs up for the great info you will have here on this post. I might be coming again to your blog for more soon.
Super post it is actually. My teacher has been looking for this content.
I’ve read a few just right stuff here. Definitely value bookmarking for revisiting. I surprise how so much attempt you set to make any such magnificent informative website.
There are some interesting closing dates in this article however I don’t know if I see all of them middle to heart. There’s some validity however I will take maintain opinion till I look into it further. Good article , thanks and we wish more! Added to FeedBurner as properly
Wow, superb weblog format! How lengthy have you ever been blogging for? you make running a blog glance easy. The total look of your site is fantastic, let alone the content!
The following time I read a weblog, I hope that it doesnt disappoint me as a lot as this one. I imply, I know it was my choice to read, but I truly thought youd have something fascinating to say. All I hear is a bunch of whining about something that you would repair in case you werent too busy looking for attention.
Magnificent goods from you, man. I’ve understand your stuff previous to and you’re just extremely fantastic. I really like what you’ve acquired here, really like what you are stating and the way in which you say it. You make it enjoyable and you still take care of to keep it wise. I can’t wait to read far more from you. This is actually a great site.
Pretty section of content. I simply stumbled upon your site and in accession capital to claim that I get actually loved account your blog posts. Anyway I’ll be subscribing to your feeds or even I fulfillment you get admission to constantly fast.
Useful info. Fortunate me I discovered your web site by chance, and I’m surprised why this accident did not took place in advance! I bookmarked it.
What i don’t realize is in reality how you’re not really much more well-preferred than you might be now. You’re very intelligent. You recognize therefore considerably with regards to this matter, made me in my opinion imagine it from numerous various angles. Its like women and men aren’t interested until it is one thing to do with Woman gaga! Your individual stuffs great. At all times handle it up!
Considerably, the content is actually the actual freshest about this significant topic. I agree with your findings and can thirstily look forward to the next improvements.I will immediately grab your own feed to stay abreast of any improvements.
Jeg er spent på å lese dette. admin, vil du fortsette å skrive? må gjøre!
Hiya, I’m really glad I have found this info. Today bloggers publish just about gossips and web and this is really annoying. A good site with interesting content, that’s what I need. Thanks for keeping this site, I’ll be visiting it. Do you do newsletters? Can not find it.
I am actually eager of reading articles regarding developing new website, or even regarding Search engine optimization.
I’d have to verify with you here. Which isn’t one thing I normally do! I take pleasure in reading a put up that can make individuals think. Additionally, thanks for allowing me to comment!
Heyyy I wanted to stop by and say I enjoyed reading your blog.
Outstanding story once again. Thank you;)
Heyyy I love your blog site!
Hello there, I found your blog by means of Google while looking for a similar topic, your site got here up, it seems to be great. I’ve bookmarked it in my google bookmarks.
Oh my goodness! an amazing article dude. Thank you Nevertheless I’m experiencing concern with ur rss . Don’t know why Unable to subscribe to it. Is there anyone getting an identical rss problem? Anyone who knows kindly respond. Thnkx
obviously like your web site however you need to test the spelling on several of your posts. A number of them are rife with spelling issues and I to find it very bothersome to tell the reality nevertheless I will definitely come back again.
Good website! I truly love how it is simple on my eyes and the data are well written. I am wondering how I could be notified whenever a new post has been made. I’ve subscribed to your RSS feed which must do the trick! Have a great day!
An impressive share, I just given this onto a colleague who was doing a bit analysis on this. And he in actual fact bought me breakfast because I found it for him.. smile. So let me reword that: Thnx for the treat! But yeah Thnkx for spending the time to discuss this, I really feel strongly about it and love reading more on this topic. If attainable, as you develop into experience, would you mind updating your blog with extra particulars? It is extremely helpful for me. Massive thumb up for this blog put up!
The following time I read a weblog, I hope that it doesnt disappoint me as much as this one. I imply, I do know it was my choice to read, however I actually thought youd have one thing interesting to say. All I hear is a bunch of whining about something that you possibly can repair when you werent too busy searching for attention.
I together with my pals have already been reviewing the best helpful tips on the website and then all of the sudden developed a terrible feeling I never thanked the site owner for those secrets. All the guys appeared to be consequently very interested to see them and have now in truth been making the most of them. Appreciation for turning out to be so considerate and also for pick out such marvelous useful guides most people are really wanting to learn about. Our own honest regret for not expressing appreciation to you sooner.
hi, great post must say, very informative . but it would be better if you reorder them with specific points without any excess word , then it might be more comfortable to the new visiters .thanks
The root of your writing while appearing agreeable at first, did not settle very well with me after some time. Somewhere throughout the sentences you actually were able to make me a believer but only for a very short while. I nevertheless have got a problem with your leaps in assumptions and you would do nicely to help fill in those breaks. In the event you actually can accomplish that, I will surely end up being amazed.
Ich möchte Ihnen für diese Hinweise danken. Sie sind sehr nützlich.
Thanks for taking the time to discuss this, I feel strongly about it and enjoy learning much more on this topic. If possible, as you gain expertise, would you mind updating your weblog with more data? It’s extremely useful for me.
I simply could not leave your web site prior to suggesting that I really loved the standard information an individual supply to your visitors? Is gonna be again steadily to check out new posts
I’d must check with an individual the following. That is not really some thing I usually perform! My partner and i get pleasure from reading through the submit that may help to make folks consider. Furthermore, thank you for enabling me personally in order to remark!
It’s really a cool and helpful piece of info. I am glad that you shared this helpful info with us. Please keep us up to date like this. Thanks for sharing.
This blog won’t display properly on my blackberry – you might want to try and fix that
You lost me, friend. What i’m saying is, I imagine I buy what youre saying. I recognize what you’re saying, and you just seem to have forgotten that you
An incredibly nice blog you could have here. You really love your typing style and it’s very informative posts, I shall come back here again!