Flex :: App With Large Number Of UI Objects Is Slow

Jun 10, 2009

I'm building my first Flex custom component, in Flex 3. It is a data table based on the 'Grid' container class, with a simple text Label in each cell. (DataGrid and AdvancedDataGrid were not appropriate starting points for my needs.) The component works quite well using smallish tables, but I tried stress-testing it using a larger table, and have been disappointed by the results.

The component creation process has some slow spots, but those are in my power to optimize and aren't my primary concern. What worry me more are what appear to be limitations in the Flex framework itself.

This 'large' sample table has a bit over 7000 cells in it. This is largish, but still 1-2 orders of magnitude less than the biggest I need to accommodate. In standard Grid structure, the main portion of the component consists of a Grid with 400 GridRows of 16 GridItems each, plus a few other smaller ancillary Grids.

Once the table renders, I find the following:

Mouse-related events are slow to fire. Specifically, I have rollOver/rollOut event handlers registered on each table cell, to let me highlight the cell under the pointer. On a small table, I could move the mouse over the table very quickly, and the highlighting would follow the pointer in real-time. With the larger table, the highlighting is very jerky, changing only about twice per second, skipping over many cells.If I place the mouse cursor over the component and leave it there, my CPU is pegged (one processor core, anyway), and stays that way until I move off of the component, when it drops to idle. My component isn't doing anything at all at this point.

It feels like Flex simply cannot scale to support component trees that are this large. I shudder to imagine how it would behave with 100,000 cells. Perhaps I'm pushing the Grid beyond its intended use, but having an object per table cell doesn't seem like an unreasonable model, and ~14,000 objects in the tree (a GridItem and a Label per cell) seems pretty modest.

View 5 Replies


Similar Posts:


Flex :: Loading A Large Number Of Images?

Aug 31, 2010

I have this code which works fine when selecting a small number of images.

public var fileReferenceList:FileReferenceList;
public function browseFiles(event:Event = null):void
{

[Code]....

However, when selecting a large number of images (1000+), the fileList isn't initialized yet when the SELECT event is dispatched. Is there a way to wait for the fileList to be initialized?

View 1 Replies

Css :: Setting Up Flex / AIR Project Structure For A Large Number Of Images?

Sep 29, 2011

We build prototypes and demo applications in Flex 4.5.1 and AIR 2.7 for mobile and desktop use. These tend to involve a large number of full-screen .PNG files. Lately we have been looking at ways to segment our code for flexibility and multi-screen re-use. What suggestions do people have for segmenting the project and libraries such that compile times are minimal and images are easy to replace?

View 1 Replies

ActionScript 3.0 :: Base64 Encoding Large ByteArray (AlivePDF) Extremely Slow?

May 3, 2010

So I'm using AlivePDF to generate a 6 page PDF with a range of text and graphics. It's a fairly large PDF, prob 4mb when saved. I need to be able to pass the PDF along with a few other variables to a PHP script that uploads the PDF and then sends an email.

Because I need to pass the PDF data along with other information, I've been using a standard POST request with URLVariables, only I Base64 encode the PDF ByteArray before sending to avoid any sort of corrupt data. This works fine, except the Base64 encode operation takes ~8 seconds, and sometimes longer on a slower machine, causing a timeout.

View 8 Replies

ActionScript 3.0 :: Can't Round Or Subtract A Large Number

Nov 23, 2010

When getting the rotation of a movie clip I sometimes get a number like this: -1.4033418597069754e-14
 
And this number seems to break simple math.  see my code below:
 
var thisRot:Number = rotation;
trace("thisRot: " + thisRot);
//outputs - thisRot: -1.4033418597069754e-14

[Code].....
 
How can -1.4033418597069754e-14 round down to 0? And Math.round(thisRotAbs) also results in 0.  So how can this be? And how can 180 - -1.4033418597069754e-14 = 180?

View 3 Replies

Data Integration :: Manipulate A Large Number Of XML And GIF Files?

Aug 1, 2006

I had to manipulate a large number of XML and GIF files. In this case I will need to use a compressed file, like zip. if the flash can access this type of data like the Java do.

View 1 Replies

ActionScript 3.0 :: Lineheight In TLFTextField Is Getting Set To A Very Large Negative Number?

Aug 24, 2010

how or why it is happening??
 
example:
 
var myText:TLFTextField = new TLFTextField();
//lots of initialization to myText.
var myFormat:TextFormat = new TextFormat();

[Code]....
 
The last statement is the one with the trouble

View 1 Replies

ActionScript 3.0 :: Large Number Of Movieclip Slowdown The Application?

Jan 10, 2012

I have a scrollbar function.In the content area i attached movieclips.Those moviclips have dynamic textfield.The scroll bar working for small list of contents.up to 500 or 600 moviclipsWhen i attached 2000 or larger number of movieclip the Entire flash get slows. How to i fasten them with same number of movieclip. why flash player slow when attaching large number of movieclip? it takes near by 58% cpu usage at this time.What is the reason for

View 2 Replies

Actionscript 3 :: Why Is The Dynamic Type Of Large Int Values Number

Feb 25, 2012

I have noticed that if I create an int with a large value, the dynamic type of the object seems to be Number. Example:

[Code]...

View 1 Replies

ActionScript 3.0 :: Number Arrays - Cannot Do Calculations For Large Values

Jun 12, 2011

I've been making arrays from numbers produced by the Collatz conjecture. But when the number where we start calculating exceeds over 1x10^16 program can't do any more calculations. It loses it's capability to handle odd numbers. Heres a part of my code that makes calculations:

ActionScript Code:
var a:Number;
var result:Array = new Array();
var count:int = 0;
function calculate(e:TimerEvent):void{
[Code] .....

View 6 Replies

Professional :: Working With Large Objects?

Oct 12, 2010

I am preparing a navigation (using panning) movie in Flash. There is very big (6000x4000) image (area photo from top) on the stage and it's position moves once user moves his mouse. Thus, user can navigate on the area.But flash really drives me insane while working on this movie. It usually suddenly stops and quits with error.I'd like to ask what can i do? should i use a different method???It seems, Adobe becomes stupid on large files and there are bugs in somewhere Flash. For example; how can i use a method like Google Maps (it loads an another image when you move another position. Not loads all images together and doesnt consumpt large amount of resources.)?

View 1 Replies

ActionScript 2.0 :: Filters On Large Objects

Feb 5, 2011

I've been working on an old flash project from a few years back and ran into a little trouble with filters.My program requires the ability to zoom in to any zoom level, which works perfectly fine. And now I've made it so the selected object would glow with the use of Flash's Glow Filter.The problem which has arisen, however is that I get a warning message: "Warning: Filter will not render. The DisplayObject's filtered dimensions (4154, 4154) are too large to be drawn."Now obviously I understand why this would occur, however I'm wondering if there is a way around it. My first guess was setting up a screen size mask, obviously way lower than the max resolution hoping that cull the movie clip to the size of the screen, but that was unsuccessful.

Is there a way to dynamically clip objects and if so would that work? As surely if I could clip the object in run time to the bounds of the screen, the resolution would never exceed that of the screen. If not, any other ideas as to how I can make a large object glow?URL...Also there's dl.dropbox.com/u/956557/Glow/GlowTest.fla if you want to take a gander at the source for that.

View 5 Replies

ActionScript 3.0 :: Spinning Many Objects With Slow Down The Performance

Aug 27, 2009

I have 500 small objects, I would like for them each to rotate (spin) constantly, I have seen a few methods for doing this, but what would be the best way to do this so performance doesn't slow down?

View 9 Replies

ActionScript 3.0 :: Flash Slow Drawing Of Objects

Feb 3, 2011

I've written a small program which detects my mouse movement and draws circles on the x- and y-position of the mouse.

[Code]....

As you can probably see: after drawing a lot of circles the program slows down and the framerate makes the circles be placed with a large gap between them. I would guess that the program draws what is behind the current circle even though the user cannot see it?

View 3 Replies

How To Manage Sound Objects In Large Presentation

Oct 12, 2010

Part of a larger presentation I've made, there is some background music. What happens is an XML file is read to get a file to play. It plays. When it finishes, it reads the XML again to get the new file. It can also stop when a video plays elsewhere in the presentation then I pick it up where it left off and start the process again. Trouble is, the presentation randomly stops. The music stops and the slides in the presentation stop. The music and slides come from a single XML file. There's also a third part of the presentation (a text crawler) that never stops.

This comes from a totally separate XML file. I never get an error, the presentation just stops on a slide and no more music plays, but the crawler keeps crawling. I've removed all the code for the music and it runs perfectly so it's obviously related to how the music is managed. So, finally, my question is how do I manage sound objects? If I need to create new objects for each sound I load and play, I'll need to do manage the sound from a single function, right? Something like:

Code:
function whatever():void {
if song is not loaded {
read xml, load and play song;
} else if video is playing {
pause the song;
} else if video has stopped playing {
resume song;
}}

View 4 Replies

ActionScript 3.0 :: Keeping Large Objects From Affecting Stagewidth?

Aug 22, 2010

I have a large movieclip that I am adding to the stage (large in dimension, not filesize). Once it is there I plan to manipulate it's X position by clicking different parts of the movieclip. Unfortunately, where I am moving the clip to is based on stage.stageWidth, which changes as soon as you add this movieclip to the stage. So I can't make any accurate tweens or anything like that. Is there a way I can set objects to not affect the screen width when they are loaded? Or still access the property of the actual window's width?

View 3 Replies

Actionscript 3.0 :: Adding Mouse Listeners To Invisible Large Objects?

Mar 5, 2010

I'm trying to think of the best way to add event listeners(mouse events) to an invisible object which is quite large. A straight forward way I can think of is probably setting the object's alphy property to 0. However since that object is very large, it will probably have a huge impact in performance. Setting invisible to flash however, will stop it listening to events.

e.g. I have a massive area 4000x4000, but I only want the 2000x2000 area to listen to events.

Other methods I can think of is to have the smaller area in the layer below the big area, covering it from view, though I'm not sure if the lower layer can pick up events? another way is maybe just have the big area listen to events, but in the handler I'll write some code to check if its within the boundary of the smaller area.

View 6 Replies

ActionScript 3.0 :: Creating A Large Grid Matrix Of Interactive Objects?

Nov 7, 2009

I am working on a project where I need an interactive matrix of 500x500 clickable lements. I thought this would be an easy task in actionscript3 but boy was I wrong. was able to create a matrix where each element was a Sprite object with attached Mouse click event. But here the performance problems begin. FlashPlayer10 can handle up to 100x100 matrix, but when I increase my matrix I start getting script timeout in browser player... Here is how my "unfinished" matrix looks like.

So how should I approach this problem? I was hoping flash will be able to handle so many elements, but I guess I was wrong. I want to have a pan control to pan around for objects off screen and of course zoom in/out control.It's true I'm not very professional in Flahs and actionscript but a friend who is told me this would be no problem implementing in AS3? I need this in flash as the thing needs to be hosted on website (unless there is a better tool for doing something like this...).

View 12 Replies

Java :: Break Up Square / Rectangle Into Large Number Of Randomly Sized Squares / Rectangles

Oct 13, 2011

I'm trying to break up a square or rectangle into a large number of randomly sized squares or rectangles so that none are overlapping.How to fill a square with smaller squares/rectangles?The solution seems to be either through bin packing or some sort of tree map.But what I'm looking for is the actual algorithm in Java, Javacript , actionscript or even C.

View 3 Replies

ActionScript :: Java - Flex ArrayCollection Of Number Objects To Java Collection<Long> Using BlazeDS

Mar 24, 2010

I am using Flex 3 and make a call through a RemoteObject to a Java 1.6 method and exposed with BlazeDS and Spring 2.5.5 Integration over a SecureAMFChannel. The ActionScript is as follows (this code is an example of the real thing which is on a separate dev network);

[Code]...

View 2 Replies

Performance :: Optimization - Improving Performance With Large #'s Of Objects

Jan 11, 2011

I'm devloping some library classes for flocking/steering behaviours on large numbers of objects (2000+). I'm finding that at < 500 instances, performance is reasonable. As the numbers increase, framerate bogs down.

I've seen remarkable performance with libraries such as Flint or Box2D with ridiculous #'s of particles / objects, so it should be possible to optimize / refactor my code to be a bit better.

I'm aware of the basic optimizations, such as bitwise operations and optimized for loops. Are there any more fundamental approaches I should be considering? For example, currently each instance is a vector-based MovieClip. Would working with BitmapData be more efficient?

View 1 Replies

Flex :: Performance - Printing From AIR/Flex Application Causes Large Files Being Sent To Printer?

Oct 25, 2010

I am working on an Adobe AIR (2.0) application that contains a feature to allow users to print documents (such as salary slips). Those documents are originally in PDF format. Due to circumstances we cannot directly display those PDFs in the AIR application (for example using flash.html.HTMLLoader). Therefore we convert the PDFs to SWFs (using the pdf2swf tool, see The SWFs are loaded into the application using a mx.controls.SWFLoader, like so:

<mx:SWFLoader
id="salarySlipImage"
loaderContext="{someLoaderContext}"

[code].....

View 2 Replies

Flex :: Flex Causes Browser Unresponsive When Processing Large Amount Of Data?

Jun 29, 2011

I have an actionscript function which is supposed to launch a panel and then fill in Networktopology data inside it.As, network data is too large that it consumes much time and makes browser hang!Even I tried to display busy cursor which also stopped spinning when data was being processed.How can I ensure processing large amount of data does not hang the browser.

View 3 Replies

ActionScript 3.0 :: Count The Number Of Objects

Dec 27, 2011

I was just looking at ths tutorial [URL]...watch_response and I also programmed it myself. I was wondering, if I had more than two objets how can I count how many of a certain object were dragged into the otheer object(in this case the shopping cart).

View 9 Replies

.net :: Reduce Number Of Remote Objects?

May 4, 2011

I am making a flex application with .NET at back end (connection using WebORB and remote objects). I have five drop-down boxes in Flex component, each having unique values from different tables (e.g. city name, county name, user name, etc.).On page load (or can say creation create) I need to display these values so that users can select from the list. I was trying to get data using five remote objects (one for each drop down box.). I am wondering if there is way to get all data in one remote call.

View 1 Replies

ActionScript 3.0 :: Count Number Of Objects?

Dec 27, 2011

[url]... I also programmed it myself. I was wondering, if I had more than two objets how can I count how many of a certain object were dragged into the otheer object(in this case the shopping cart).

View 8 Replies

Flex :: Different Flex Swf's To Send Large Blocks Of Data Between Each Other Without Localconnection?

May 25, 2011

Is there a way for different flex swf's to send large blocks of data between each other without using localconnection which is size limited or using sharedobjects. This needs to happen on the client without server communication.

View 2 Replies

Flex :: Round Number - Increment Or Decrement A Number By 0.1?

Aug 2, 2011

I have a problem with this code :

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"[code].....

I get the right number when I click on only '+' or only on '-'But if I click '-' until 0.7 and '+', it stays at 0.7
The same append when I click '-' until 0.9 when '+', it stay to 0.8. Why? How can I do to increment or decrement a Number by 0.1?

View 2 Replies

ActionScript 1/2 :: Tracking Number Of Objects In MovieClip

Feb 7, 2011

How to track the no. of balls inside my movieclip (ball7)? And put as dynamic text (winner_txt)?
Inside my movieclip has no layer, ball layer.
No layer: each individual one frame is labelled "0b", "1b" and continues..
Ball layer: first frame empty, 2nd frame 1 ball, 3rd frame 2 ball.. and continues..
Tried using:
var no = _root.ball7_mc._currentframe
_root.winner_txt = Number(no);

View 7 Replies

Flash :: Load A Certain Number Of Objects To Stage?

Oct 31, 2009

I commented my code below to reflect what I am attempting to do here. Flash is throwing me a 1084 error at the moment but I cannot spot my issue. I expect that it is something to do with the this['circle'+i] statement.

var boxOne = new box();
stage.addChild(boxOne);
boxOne.x = stage.stageWidth/2;

[Code]....

View 1 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved