Flex :: Extending MXML Custom Components Via MXML?
Feb 3, 2011
What I'd like to do: create an MXML component with some children, then extend it via MXML to create a new component with more children, without losing the original set.In other words
create a component bc.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:BorderContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
I am working on a custom Flex 4 component which is an aggregation of two existing flex components. I would like to be able to specify my own custom properties for the component as well as access the existing public subcomponent properties via MXML. For instance I might want to adjust the font color or style for the label and text input. toy component which aggregates both a label and a text input:
When I define custom propertie in my MXML component, I also want to define a set of possible values of that property to make Flex Builder show then (possible values of the custom property) when I invoke code completion function.
I've been trying to create a custom mxml component that extends another custom mxml component (i.e.MyMXMLComponent -> BaseMXMLComponent -> Group). I've been reading that trying to add visual children to MyMXMLComponent caused error with Flex 3 but that's no longer the case with Flex 4.
What I want to know is whether this is a supported/fixed/documented feature of Flex 4? or just some undefined behavior in Flex 4 that may get changed with future updates?
if this is supported and documented feature, does anyone have link pointing to adobe document stating it as such?
I'm writing a Flex application using Flash Builder 4 and I'm having a bit of trouble with an AS3 object.Essentially, it is a BorderContainer, with a few buttons and images, and programming logic that determines how these interact with eachother and a database.
What I want to be able to do is configure the layout/style of the inner components using MXML and CSS. I can configure the inherited objects, but not ones that I have defined.[code]...
I'm trying to do this using only mxml, no <script> tags, although I don't necessarily need a solution that's only mxml. It was more of an educational exercise to see if I could do it all in mxml. I have a custom component that has a slider and textinput and their value/text properties are bound together. I'm surfacing a few properties of the slider in my component so that it can sort of be treated like a slider.
Whats wrong with this Flex MXML code? I'm getting error messages (error lines marked with "X"). Code is very simple but I cannot find the error.Message both times: multiple initalisation values for standard property "text" of type "string" (translated from german)[code]
Is it possible to make some kind of 'dynamic' thumbnails for mxml components which I'm using in my application? By 'dynamic' I mean if I change some layout in mxml component, my thumbnail refreshes according to new layout without any screen capturing,photoshoping or similar
My Main.as extends flash.display.Sprite, I want to use a ComboBox component in the as, without any mxml, how to implement it? I read this Possible to use Flex Framework/Components without using MXML?, Its main as extends spark.components.Application, but still need a mxml file. Its main idea is to rewrite the Application component, and reuse it in mxml file. That is not what I want. I uses Flex SDK 4.1
I'm working on an AIR project in Flash Builder 4. My question has apparently been asked a lot (according to Google), but I haven't found a satisfactory answer so I'll be very detailed in what I'm looking for:Is there any way to create an AIR project in pure ActionScript that:Is truly object-oriented (i.e. the entry point is an ActionScript class with instance variables and methods)?Can instantiate mx and spark controls without MXML?I was able to accomplish #2 in fairly different ways by following these two sets of instructions (with only a tiny bit of initial MXML):
[URL]
However, neither of those allows me to accomplish #1. If I declare a private member variable outside the entry point function, I get an error from the compiler that the keyword 'private' can only be used in a class.If you like MXML, feel free to post your viewpoint as well. My reservations revolve mostly around these perceived notions:The learning curve of MXML seems steep.The time it will take to become good at MXML will not be worth the investment since its main purpose is to ease GUI development (which I'm already good at anyway).Like I said previously, I don't want to be an "XML programmer". I'd like to maintain the power and flexibility of OOP.
Does MXML get compiled down to as3 and then converted to flash bytecode? Also, is there a significant performance penalty to compiling mxml vs compiling as3?
I am trying to override a Button class, i have a few properties which i wish directly initialise with the mxml description of the component, like :[code]which function is triggered ( in order to override it ) when all properties with mxml description is fully initialised with their values ?
I have several mxml components in an app, all of which need the same variable called genericX. I've included that variable in the main mxml and made it public [Bindable] public var genericX:Number = 102; But I still can't access it from other mxml components. If I try to do this for example, it doesn't recognize the variable. <s:Button x="{genericX}" label="Click" />
I'm building a Flex 4 Application in AIR.I've made a main.mxml and a login.mxml component. It all works but i can't communicate between my two mxmls (MAIN and COMPONENT)The login works but then it has to send a event tot the main that i can change the state in the main.Here is my cropped code.
login.mxml //resulthandler if login is succesfull loginUserResult.addEventListener(ResultEvent.RESULT, loginUserResultHandler);
How do I get round the following error: Access of undefined property pMatrixBack . How do I access this component from within the ascript file?[code]...
Creating a window-based mxml component, but in design mode all components that I'm adding are not movable, why? If I create component based on group f.e., it's ok, but based on window - they are frozen. Using Flash Builder 4.6.
im trying to figure out what is better for run-time, creating components in MXML or by SCRIPT?. I built an app that recieves data from a server without knowing how much data exactly. In worst case scenerio , ill need 10 LABELS and 2 DATAGROUPS.But i usually need something like 3 LABELS and 1 datagroup. what is better? creating all components in advance and than not include in layout the ones i dont need, or make some checks and then create only the components i need by script? I made some tests , but it wasnt really decisive, run-time was pretty much simillar.Im guessing it must be stated somewhere what is better. Does anyone have an answer for me?
I am trying to override the text setter in the Label component but it behaves weirdly sometime super.text works and sometimes not! and the traces show that there's no error with my code.
here's my code:
import spark.components.Label; public class LabelXX extends Label { private var _initialText:String;
I'm playing around with the scaleX/Y in the canvas tag and have noticed some strange behaviour. When I set scale in in mxml the width and height of the canvas are adjusted accordingly. For example if I have a canvas like this: <mx:Canvas width="1000" height="1000" scaleX="0.1" scaleY="0.1" />
The canvas now appears on screen to have a width and height of 100 and if inside my creationComplete callback I check the width and height property they are indeed 100. But if I do exactly the same thing except I set the scaleX/Y property from actionscript the canvas on screen appears to have a width and height of 100 as expected, but when I check the width and height property of the canvas they are still at the previous values of 1000.
I'm implementing a Flex application with several modules.I'm reusing the same component in all these modules.I was wondering if I'm correctly importing it in each mxml module definition: xmlns:hillelcoren="com.hillelcoren.components.*"Should I import it only once, in the main application mxml instead?
There are lots of examples of how to create skinnable components in AS3 using the new Spark component architecture, however I've yet to find any such examples using MXML.What I'm mainly referring to is defining the skin parts and skin states. It seems as though the SkinPart metadata is supposed to be associated with properties and as such can't be used in MXML, is this correct?
Is there any opensourse, free set of components for creating Flex mxml graphs? like aviary Peacock style ones with at least Drag, drop, and connect generators so each graph element could have or something like that. Framework should be opensource (like GPL, LGPL etc) BTW: I found one wary bacic made by Erno Aapa with Degrafa but I would really love to see something much more Flex 4 - mxml oriented and frienfdly.
I want to make a custom container, usable in MXML like: <local:MyContainer> <s:Label/> <s:Button/> ... </local:MyContainer>
But I'd like to be able to catch when the children are added so that I can control stuff like when & where they're added. I tried overriding addChild(), addChildAt(), addElement(), addElementAt(), (extending the Group class) but they only fire when you add elements specifically with those functions - the application launches and the label, button, etc, end up in MyContainer without calling these functions. How do I control the addition of sub-components via MXML?
I'm using several custom MXML components in my Flex 4.5 application.They all use absolute coordinates to place Image, Label, Line, etc. components and are currently based on a spark.components.BorderContainer:
Then I've realized, that I probably don't have to use BorderContainer, because I don't draw/need any borders around my custom components.But I don't know, what to take instead of it.I've tried taking <mx:UIComponent> (and removing <s:Layout> tag above), but then I get the error:
'Image' declaration must be contained within the <Declarations> tag since it does not implement 'mx.core.IUIComponent'.
'Label' declaration must be contained within the <Declarations> tag since it does not implement 'mx.core.IUIComponent'.
Is there some simplest possible spark "container"? And do I need a "container" at all if I use (and want to use) absolute coordinates?
suppose i have 3 buttons(for example say, productin, marketing, sales ) on my main.mxml..once i click on one button it should take me to abc.mxml page with production data, once again if i click on second button it should take me to the same abc.mxml but with marketing data. same as for 3rd button also, how can i achieve this ?
How to take an existing custom component in Flex and convert it into a module? EDIT: What should be done in the mxml where this custom component is used? Should it be replaced with a to load the module? If yes, how to deal with code that uses instances of the components?
Here is an example of a custom component. It is just a box with a title label and a close image (X):
[Code]...
When using the component in an MXML document, I would like to have the "(HEADING TEXT)" replaced with a parameter (should be easy) as well as the "(INSTANCE MXML)" with several labels, text inputs, check boxes, etc. (maybe harder). I have found this script-based method, but I would like a cleaner compile-time solution if one exists.
I am trying to develop a custom component to act as a divider.
[Code]....
I would like to use this component to assign objects like this:
[Code]...
Unfortunately, this does not work. I get a compiler error saying: In initializer for 'left': multiple initializer values for target type mx.containers.Canvas.