Flex :: Adobe - ArrayCollection - Accesing Object Methods / Attributes?
Jun 18, 2011Maybe i didn't get the real meaning of the ArrayCollection, but first of all some code
[Code]...
Maybe i didn't get the real meaning of the ArrayCollection, but first of all some code
[Code]...
if i have two set of arraycollection like:
var abc:arraycollection = new arraycollection([{region:"AAA"}])
var cde:arraycollection = new arraycollection([{territory:"A"},{territory:"b"}])
how do i palm the above two set of arraycollection to advancedDatagrid
How to dynamically add attributes to an object and convert that object into xml in Flex/Actionscript?
View 1 RepliesLet's say I have a class which looks like this :
public class MyClass
{
public var attribute1;
public var attribute2;
}
and I'd like to get attribute1 and attribute2 as strings. I tried this :
var test:MyClass = new MyClass();
for (var key:String in test)
{
trace(test[key]);
}
but it does not work, it never goes in the loop. How can I do what I want to do ?
I am dynamically creating a number of objects (movieclips) which all have a number of attributes.[code]and so on. i.e sub attributes. I don't think this is possible? Only sprite and movieclips can have dynamic attributes so unless atrbY is a movieclip (which it isn't, it's a string) it isn't allowed?Each object can have suboptions with further attributes associated with the chosen suboption.Later in the program I will manipulate, read and interact with the objects and they have text display behaviours dependent on the suboption chosen. That part (should) be straightforward! heh. One the object has the attributes attached in a usable format, accessing them should be simple.This will be for a store. i.e t-shirt1 has size small, price 10, size medium, price 12, size large, price 14. t-shirt2 has size medium, price 35, size large, price 40 and so on.[code]
This format of the XML can be adjusted if it would make the parsing easier.I am currently reading the XML in, stepping through, grabbing the individual parameter such as category and then adding it as an attribute of the object and it works fine. i.e. I end up with obj.category = 'catname'. However, on suboptions I am having a problem.Should I put all the suboptions in a multidimensional array and use nested loops to apply them to the object?I would still have the problem of objX.suboptionarray[Y].suboptionprice which isn't allowed? In the above XML case Y would be 0,1 and 2 giving 3 suboptions to objX and each suboptions would hold attributes such as pvid associated with that suboption.I could go down the horrible route, obj1.suboption1subptionprice ; obj1.suboption1suboptionpname; obj1.suboption1suboptionvalue; obj1.suboption2suboptionprice; obj1.suboption2suboptionpname and so on and so on for each suboption which could be five options (small,medium,large,x-large, xx-large) and which would "work" but would be bad programming and involve splicing names to get say, the "third" suboptions' price and pvid e.t.c
Going down the route of mutidimensional arrays sounds good except that on say 50 objects I would have stacks of arrays which I'm guessing isn't great in terms of resources?.Just to add, the number of suboptions varies between object, every object has a minimum of one suboption (default option) but can have as many as needed (unlikely to be more than 5 but should be scalable). i.e some t-shirts only come in medium whereas some have many sizes.I have a fair amount of leeway on the format of the XML which I generate from the database so the formatting of that could change to make the parsing easier.
I want to capture a change in a property of an item as follows
myItem.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE,listener);
protected function listener(event:PropertyChangeEvent):void {
}
[code]....
linedataColl is an AC that contains 200+ of rows extract from CSV and in my design, I wish to additem into SuperDataCollection object by object but the only problem was I'm unable to see any data display in "S" which is a datagrid. What wrong with my code?
var superDataCollection:ArrayCollection = new ArrayCollection();
var dc:ArrayCollection = new ArrayCollection();
var di:Object = new Object();
[code].....
I need to merge 2 arrayCollection and avoid duplicates. They contain objects with their own attributes. I would like to avoid duplicates.
View 2 RepliesI am still very new to Actionscript and have an okay working knowledge of Flex. I am working on an AIR application that runs a SQLite database underneath. The database is only 3 tables (projects, items and types). I was wondering if Actionscript best practices are to use a data access object or layer to store all of my database functions or to just run them inline as needed. I would assume an access layer would be best for interacting with the database for usability, but I can't seem to find much documentation for SQLite in AIR.
View 1 RepliesI am using Flex 4 and for whatever reason I cannot get the following code to work which happens inside of a ListEvent handler for a dataGrid:
_tempRule = DataGrid(event.currentTarget).selectedItem as Rule;
Rule is a custom class, and the above code always returns null. The dataprovider for the datagrid is an ArrayCollection. If I try to wrap the above code to make it like the following:
DataGrid(event.currentTarget).selectedItem as Rule
I get this error:
TypeError: Error #1034: Type Coercion failed: cannot convert Object@e15a971 to com.mycompany.arcc.business.Rule
Now I know I have done this before with native Flex classes like Button, etc, but it my case it will not work. Here is the Rule class:
package com.mycompaany.arcc.business {
import flash.utils.describeType;
import mx.collections.ArrayCollection;
[Code] .....
I am thinking of writing a subclass of ArrayCollection, similar to ClearToolkit's that can be smart about managing my remote objects when coming back from BlazeDS.I am wondering if it is possible to get Flex to put my collection of objects in my own custom collection instead of defaulting to ArrayCollection? If not, I'll need to pull everything out of the collection it comes in in order to populate my own.
View 3 RepliesI have two applications: a client in flex and a server in Java. When I deploying the application inside flex builder with the tomcat server inside as well, everything works fine. But now I'm trying to deploy in apache tomcat outside the flex/eclipse builder and I have a problem.I think the problem is with relative/absolute paths but I do not know how to resolve it.In my Java application I have to access a database and a get a file from it. I use a properties to set a path where I want to download that files like this:pacs.ruta=C:\resources\And then I need to access to that file so in use this code:fin = new FileInputStream(pacsRuta+""+f.getName());where f.getName() gives me the name of the file so I get the path of the file with the path I set in pacs.ruta and the files name.
I do not know why it does not work. I tried to put pacs.ruta=/resources/to associate with a folder in my application but It does not work.Could someone give me an advice? Do you think it is the problem? Because the whole application works fine deploying in a tomcat server outside the flex/eclipse builder but when this code is called the application does not work.
I'm new to Flex and am using TileList bound to an ArrayCollection. The array collection is empty at load time, and then updates with the results from am HTTPService call. The problem is that the item renderers aren't being rendered as expected, I'm guessing because there was no data when they were first rendered at load time. Here's simplified example:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
<mx:Script>
[code].....
I have 2 classes, Display holds the currently selected Component:
public class Display
{
public static var selectedComponent:Component;
}
Component has an ID string and the selectedComponent variable is set on click:
public class Component extends MovieClip
{
public var id:String;
addEventListener(MouseEvent.CLICK, function() {
[Code]...
Removing the selectedComponent variable type so it reads public static var selectedComponent; removes the conversion error and seems to change the ID variable but it appears to only be a copy of the object.
linedataColl is an AC that contains 100+ of rows extract from CSV, I wish to add item into SuperDataCollection object by object but the only problem was I'm unable to see any data display in "S" which is a datagrid. What wrong with my code?
var superDataCollection:ArrayCollection = new ArrayCollection();
var dc:ArrayCollection = new ArrayCollection();
var di:Object = new Object();[code]......
I am creating an object pool to cache some recyclable objects in memory at the outset of my application in order to avoid (as much as possible) the performance issues caused by GC running; if possible I'd like to minimize the memory my object pool reserves, so I'm attempting to pool generic forms of the objects (with no methods) and then casting the generic variants to more specific and complex object types which extend the generic form when I actually want them on the stage.
The trouble is that to do this requires the generic variant class to import/extend MovieClip (because the more complicated objects are themselves MovieClips and make use of DisplayObject methods)-- does simply importing and/or extending a class add to the memory an object takes up when instantiated even if it never uses methods from the inherited class? It makes sense that it would, and some light profiling seems to suggest that it does, but I'm not 100% certain. About how large should an 'empty' MovieClip instance be in bytes?
How can I use a .NET service object in an Adobe Flex application? Is it even possible? Do I have to use some third-party tool?
View 3 RepliesI wanted to know if anyone here knows how to import a 3D Object (i.e. Maya 3D Model) into Adobe Flex Application? I needed to create a simple Flex application which will allow me to rotate the 3D Object by dragging but I cannot seem to start doing it because I'm having a hard time trying to figure out how I can import my 3D model into Flex.This is exactly what I wanted to do: 3D Object in Flex
View 1 RepliesWould anyone happen to know how to change attributes like .z, .rotationZ, rotationY etc on a created MovieClip/Sprite or whatever. Because when I create a new mc or sprite and try to change these attributes the object just disappeares.
View 7 RepliesI've created and XML object that's working fine and I want the user to be able to add to the XML dynamically, using an input text field and appendChild() So, what is the syntax to use so that I can put in the text they enter as an attribute of a node of my current XML object? Here's what I've got for adding to the XML (stripped down obviously):
ActionScript Code:
var xmlData:XML = new XML();
var clientToAdd:String = userInput.text;
xmlData.appendChild(<project name=clientToAdd></project>);
How can I take the variable clientToAdd and make it the attribute "name" of the "project" node?
[code]The row object consists data for different columns of a datagrid. dp.push(row) pushes the data onto the datagrid.Columns with index 3 and 4 have type of "DATE" with whole time stamp being displayed. Is there any method in flex which will help me extract the monnth/day/year from date or timestamp for that matter.
View 2 Replieshow can I add attributes to a Display Object, that I have created in the Authoring Tool, so I can acces it by:
myDisplayObjectInstance.myNewAttribute
Is a DisplayObejct a dynamic class, that can be extended from anywhere?
Multiple axis creation via MXML works fine:
http:[url]...
But when I'm trying dynamically create horizontal and vertical axis then I'm getting extra axes. I believe this is Adobe bug. How I can fix this behavior?
<?xml version="1.0" encoding="utf-8"?>
<s:Application
minHeight="600"[code].....
I'm recording and playing back mic input using Flash Media Server, and even though it's just audio, we're saving the output as FLV. I'd like to get a waveform of the recorded audio. Ideally, since we already have a lot of saved/recorded audio, I'd like something that can take a loaded FLV and get the waveform, as opposed to generating it at record or playback time.
AS3 has the new Sound.extract() method that can be used for this (plenty of online tutorials), but it seems like it only works for MP3. Is there a way to use this method on FLV audio? Or is there another to extract a waveform from a FLV?
How do I get the list of all methods from an object? I know I can get the object class in this way:
var className:String = flash.utils.getQualifiedClassName( myObject );
var objClass:Class = flash.utils.getDefinitionByName( className ) as Class;
In JavaScript I can iterate over the prototype of an object to get its properties and methods. Is that possible in ActionScript 3? Do you any good source for metaprogramming/reflection over ActionScript 3?
i have a collection looking like this :arr.getItemAt(0).closet.clothes[0].color. the arr is an ArrayCollection data type..the clothes is an Array data type..when i try to bind this to an mxml component , i get a warning :"Data binding will not be able to detect changes when using square bracket([]) operator. For Array, please use ArrayCollection.getItemAt() instead."this is not possible as the Array class has no method getItemAt().
View 0 RepliesSo I am writing a program which uses Dictionary to store objects. For example
var dictionary:Dictionary=new Dictionary();
var myObject = new myObject(var1, var2, var3);
dicionary["key"]=myObject;
where var1, var2, and var3 are simply means of assigning values to variables in myObject.can I access values or functions that are found in myObject? In myObject class I have some getters and setters. Can I use a getter to get the value of var1 for example.
dictionary["keys"].getVar1()?
-I know one can call javascript functions from as3 using ExternalInterface, but in all the examples I've seen the function has been a standalone function on the page. Can methods on objects (that are on the page) be called. E.g: obj.someFunc() rather than just someFunc()?
-The return value can be stored as well using ExternalInterfaces. Can this return value be a javascript object? If so, its methods be called from it directly?
I want to create a dynamic thumb scroller. I want to call a function in the thumb . How can it possible?
ActionScript Code:
var btn:CustomButton;
for (var i:Number = 0; i<totalNum; i++) {[code]...
I want to call a function named SetRotate() in CustomButton Class
I have been searching for 2 days now but still not a valid solution.I have created an renderer to customize the content of one of the columns of the DataGrid.
Code:
package {
import fl.containers.UILoader;
[code]......