Custom components in FXML

Hello

I want to set in the FXML a custom component, something like MyTreeItem, which extends from TreeItem. To do this, I created a MyJavaFXBuilderFactory to return the correct constructor (MyTreeItemBuilder). MyTreeItemBuilder returns instances of MyTreeItem.

Note: Below, I send my courses and my tree.fxml.


Is it possible to include in the custom components of fxml?



When I run my application, I got this error:

com.sun.javafx.fxml.PropertyNotFoundException: "myvalue" property does not exist or is read-only.

at com.sun.javafx.fxml.BeanAdapter.put (unknown Source)

at com.sun.javafx.fxml.BeanAdapter.put (unknown Source)

to javafx.fxml.FXMLLoader$ Element.applyProperty (unknown Source)

to javafx.fxml.FXMLLoader$ Element.processPropertyAttribute (unknown Source)

to javafx.fxml.FXMLLoader$ Element.processEndElement (unknown Source)

to javafx.fxml.FXMLLoader$ ValueElement.processEndElement (unknown Source)

at javafx.fxml.FXMLLoader.processEndElement (unknown Source)

at javafx.fxml.FXMLLoader.load (unknown Source)

at MainWindowTree.start (MainWindowTree.java:33)

to com.sun.javafx.application.LauncherImpl$ 5.run (unknown Source)

to com.sun.javafx.application.PlatformImpl$ 4.run (unknown Source)

to com.sun.javafx.application.PlatformImpl$ 3.run (unknown Source)

at com.sun.glass.ui.win.WinApplication._runLoop (Native Method)

in com.sun.glass.ui.win.WinApplication.access$ 100 (unknown Source)

to com.sun.glass.ui.win.WinApplication$ $2 1.run (unknown Source)

at java.lang.Thread.run(Thread.java:722)



Tree.fxml



<? XML version = "1.0"; Encoding = "UTF-8"? >



<? import javafx.scene.layout. *? >

<? import javafx.scene.control. *? >

<? import javafx.scene. *? >

<? import javafx.geometry.Side? >;

<? importdummy.tree.MyTreeItem? >;



< xmlns:fx VBox = "http://javafx.com/fxml" >

< children >

< showRoot TreeView = "false" fx:id = "treeView" >

< root >

< TreeItem value = 'Root' >

< children >

< MyTreeItem myvalue = "Node1" fx:id = "treeItemNode1" >

< children >

< TreeItem value = "none" / >

< / children >

< / MyTreeItem >

< children >

< / TreeItem >

< / root >

< / TreeView >

< / children >

< / VBox >



Classes:



package package dummy.tree;



Import javafx.scene.control.TreeItem;



SerializableAttribute public class MyTreeItem extends TreeItem {}



public Object getMyvalue() {}

Return super.getValue ();

}

public void setMyvalue (Object value) {}

super.setValue (value);

}



}



package dummy.tree;



Import javafx.fxml.JavaFXBuilderFactory;

Import javafx.util.Builder;

Import javafx.util.BuilderFactory;



Import dummy.tree.MyTreeItem;





/ public class MyJavaFXBuilderFactory implements BuilderFactory {}



private JavaFXBuilderFactory javaFXBuilderFactory = new JavaFXBuilderFactory();



class MyTreeItemBuilder implements {Builder < MyTreeItem >



@Override

public MyTreeItem build() {}

return new MyTreeItem();

}



}



@Override

public Builder <>? getBuilder (class <>? clazz) {}

If (clazz.equals (MyTreeItem.class)) {}

return new MyTreeItemBuilder();

}

Return javaFXBuilderFactory.getBuilder (clazz);

}



}



package dummy.tree;



import java.io.InputStream;

import java.net.URL;



Import javafx.application.Application;

Import javafx.fxml.FXMLLoader;

Import javafx.fxml.JavaFXBuilderFactory;

Import javafx.scene.Scene;

Import javafx.scene.layout.Pane;

Import javafx.scene.paint.Color;

Import javafx.stage.Stage;



SerializableAttribute public class MainWindowTree extends Application {}



Public Shared Sub main (String [] args) {}

Application.Launch (null);

}



@Override

public void start (s phase) {}

Location of the URL = getClass().getResource("/com/dbn/ui/theme/default/tree.fxml";);

FXMLLoader fxmlLoader = new FXMLLoader();

fxmlLoader.setLocation (rental);



MyJavaFXBuilderFactory fxBuilderFactory = new MyJavaFXBuilderFactory();



fxmlLoader.setBuilderFactory (fxBuilderFactory);

InputStream inputStream = null;

try {}

inputStream = location.openStream ();

Root = fxmlLoader.load (inputStream) (component) component;

Scene = new scene (root, 800, 600, Color.TRANSPARENT);

s.setScene (scene);

s.Show ();

} catch (Exception ex) {}

ex.printStackTrace ();

}

}



}

Hello

When you include the code (and the stack traces) in your forum messages, please include in a tag {code} as shown: https://forums.oracle.com/forums/ann.jspa?annID=1622 this makes it more easy for us all to read.

Your code is sort of ok, but you have a lot of typos in your FXML and your Java code. Try searching for the code below instead. You don't actually have a constructor or by the way, it will work only without it.

Try this FXML:










    
        
            
                
                    
                        
                            
                                
                            
                        
                    
                
            
        
    

With that for your item custom:

package dummy.tree;

import javafx.scene.control.TreeItem;

public class MyTreeItem extends TreeItem
{
    public Object getMyvalue()
    {
        return super.getValue();
    }

    public void setMyvalue(Object value)
    {
        super.setValue(value);
    }
}

And for launch:

package dummy.tree;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class TestApp extends Application
{
    public static void main(String[] args) throws Exception
    {
        launch(args);
    }

    public void start(Stage stage) throws Exception
    {
        Parent rootNode = FXMLLoader.load(getClass().getResource("/tree.fxml"));
        Scene scene = new Scene(rootNode, 800, 600);
        stage.setScene(scene);
        stage.show();
    }
}

Also, I guess it is just a test case, but you don't need to provide your own "myvalue" getters/setters when this is delegated to super. Just use the 'value' property directly in your FXML.

A view Naming Convention, it should be myValue with getMyValue and setMyValue (e.g. capital 'V'). FXML is case-sensitive too, so if you change, you need to change your FXML for use myValue instead.

Hope that helps,
zonski

Did you find this answer useful? If so, please mark it as 'Correct' or 'useful '.

Tags: Java

Similar Questions

  • Any request for a list of the custom components in system

    Hello

    Is there any question to find the list of the custom components in the system.

    Concerning

    Jagadish

    What is the purpose of a list of custom components?

  • Communication between two custom components

    Hello

    I have a problem to get action in a custom component to cause a refresh of another custom component?

    My configuration is:

    < application >

    < component includeIn custom 1 "View1" >

    < component custom 2 id = "custom2" level = "{level}" "view2" includeIn >

    < component custom an includeIn 'View1' >

    < component includeIn custom B "view2" >

    < / application >

    I have a number of custom components load in my main application window.

    In the custom component 1, I have a drop down menu which determines levels 1 to 10.

    When the user chooses a new level, change an event is triggered and the dispathed to the main application that receives it in the UpdateDisplayHandler.

    Component event dispatcher custom 1:

    protected function level_changeHandler(event:IndexChangeEvent):Sub

    {

    var newDisplay:UpdateDisplay = new UpdateDisplay ("UpdateDisplay", level.selectedItem.value);

    dispatchEvent (newDisplay);

    }

    Main application manager:

    protected function updateDisplayHandler(event:UpdateDisplay):Sub

    {

    Level = event.level

    }

    Level information comes to the manager who updates the "level" variable correctly. So far so good.

    The variable "level" is can be linked and analyzed for the custom component 2.

    < components: custom2 id = level "custom2" = "{level}" / >

    The question is how to make my component custom 2 refresh(), reload() then it makes again based on new information of level?

    I will be grateful for any help on this matter.

    Karsten

    Is probably not the cleanest way, but he's going to move you quickly.

    public var levelNumber:int = new int;

    implement

    private var _levelNumber:int;

    public function get levelNumber (): int

    {

    Return _levelNumber;

    }

    public function set levelNumber(value:int):void

    {

    If (value! = _levelNumber)

    {

    _levelNumber = value;

    call the custom here update refresh method

    }

    }

    I don't know your usecase or your architecture so there are probably better ways.

    Maybe like this:

    The main application event handler:

    protectedfunction updateDisplayHandler(event:UpdateDisplay):void

    {//check if there is a change in level and exposes a public service on the part 2}

    If (level! = event.level)

    {

    Level = event.level;

    COMPONENT2.updateOrRefreshBasedOnNewLevelValue (Level);

    }

    }

    HTH,

    Claudiu

  • Using custom components will break my site if the framework is updated?

    Using custom components will break my site if the framework is updated?

    For example if I use the tink browser which is a version of the spark of the viewstack: http://www.tink.ws/blog/flex-4-navigator/

    In the case of update of the framework, it is possible that my sites Web stops working due to changes in the basic components used?

    I would like to know how can I design my components to ensure that they stop working?

    Thanks in advance.

    Any updates to the SDK that you recompile against could potentially break the desired site behavior. Could be with the SDK components or ones you've written yourself. It's just the nature of software development. Testing is the key.

  • Custom components &amp; help Webservice

    I built two custom, components based on a button and the other on a graph.

    The Web service has been defined with the following tag in the button component:

    " < mx:WebService id ="ws"wsdl =" http://localhost/Service1.asmx?WSDL « >
    < name mx:operation = "GetData" / >
    < / mx:WebService >

    I want to be able to add a listener for the chart (not the button) component that listens to the webservice result event and refresh the list. It will be a lot of buttons and many rankings for each graph must subscribe to result event of a particular call.

    The structure of my test application is something like this:

    < application >

    < button (call webservice here) >

    < chart (listener event result here) >

    < / application >

    I think it should be pretty simple, but I can't understand it. Any help would be greatly appreciated!

    Ivan

    you would have an arraycollection collection as the dataprovider for the chart component, just update that.

  • custom - components

    Hello
    I hope that it isn't something obvious... but I searched high and low for a benchmark decent to implement custom components.
    It is not critical, but I would like to place a set of codes < mx: states > in a custom component.
    Can anyone suggest it please if or how this is possible?

    It is important that I'm calling the new State of a VBox inside a TabNavigator?

    Also, while I'm here...
    I'm States okay - kind of... I get the new State (a form) to spend in the upper region of my VBox tab.
    BUT I want the form actually replace the datagrid control, which is the normal display mode when you click the tab.

    Thanks in advance...
    Chris

    Hello again...

    Eureka!
    I went to pages of search help 'parentApplication' in the discovery of the hierarchy.
    .. .came between Flex Applications > uses the container of the Application > object on the Application
    where I found the refernce to mx.core.UIComponent.parentDocument, then
    "You can use parentDocument.parentDocument to back up the tree of multiple documents.

    So, I replaced 'parentApplication' with 'parentDocument' in the file states_TaskMgr_addNew.mxml...

    ... and it worked.

    Thanks again for your help... it was a great experience.
    See you soon,.
    Chris

  • Disappeared from custom components

    I have some custom components in my app and when I opened Eclipse with the Flex SDK kit it shows red boxes with X inside. I'm going to fashion, the design pane Explorer and it shows the empty custom folder. I have my custom in this namespace. I restarted Eclipse, deleted and recreated the project and nothing. Any ideas?

    turns, I got back my components to another folder. Remove the component in Eclipse, create a new component of the same name in Eclipse. Copy and replace the new file with the backup file. I suppose that Eclipse was not save files for some reason any.

  • Possible bug in custom components

    I think I found a bug when you use custom components. I have a customized TabNavigator which children containers are also custom components. To do this, I can not set properties on custom containers, it fails.
    Here is an example of how do:

    1. create a TabNavigator custom like this: (in this example I'll call her TabN)
    <? XML version = "1.0" encoding = "utf-8"? >
    "< mx:TabNavigator xmlns:mx = ' http://www.adobe.com/2006/mxml" > "
    < / mx:TabNavigator >

    As you can see, there nothing wrong with it, just a custom bar

    2 create a custom like this: (in this example, named reportGrid)
    "" < mx:HBox xmlns:mx = ' http://www.adobe.com/2006/mxml '
    < mx:DataGrid id = "telefonosDG" dataProvider = "{dataGridList}" width="100%"/ >
    < mx:Script >
    <! [CDATA]
    Import mx.collections.ArrayCollection;

    [Bindable]
    public var dataGridList: ArrayCollection collection;
    []] >
    < / mx:Script >
    < / mx:HBox >

    As you can see there's only a dataGrid whose dataProvider is an arrayCollection collection-related.

    3. in your application follow these steps:
    "" < mx:Application xmlns:mx = ' http://www.adobe.com/2006/mxml '
    xmlns:custom = "custom.*".
    creationComplete = "initialize ()" width = "100%" height = "100%" layout = "absolute" > "

    < mx:ArrayCollection id = "testList" / >
    < custom: TabN width = "100%" >
    < custom: reportGrid id = "marketing" dataGridList = "{testList}" width = "100%" height="100%"/ >
    < / custom: TabN >

    < mx:Script >
    <! [CDATA]
    private void inicializar(): void
    {
    var prod1:Object = {};
    var prod2:Object = {};
    prod1. Qty = 1;
    prod1. Index = 1;
    prod2. Qty = 2;
    prod2. Index = 2;
    testList.addItem (prod1);
    testList.addItem (prod2);
    }
    []] >
    < / mx:Script >
    < / mx:Application >


    In theory, when you change the testList these changes should appear in the DataGrid control, but he fails, the DataGrid stays empty.

    Now instead of using the customized TabNavigator (TabN) using a normal component < mx:TabNavigator > and see what is happening, it works perfectly fine, the DataGrid control is populated with the two elements that I added.

    SO, what's the problem here? Is this a bug?

    My friend uses the 2.0.154976 version and on that one, the bug has been fixed

  • To access the elements of a call from the custom components page

    I'm sure that it's simple, but I have searched for hours and find nothing.

    I have my main mxml page various controls and a HTTPService. From this main page to include a component custom.

    Everything what I'm trying to access the main page in custom components gives me "access undefined property error."

    What Miss me?

    Should be a little bit more about your custom component and what you are trying to access. Normally, when you access objects outside the scope of the current element it is advisable to raise events.

    However, if you simply 'dot' your way to scope enforcement check out
    http://livedocs.Adobe.com/flex/201/html/wwhelp/wwhimpl/common/html/wwhelp.htm?context=live Docs_Book_Parts & file = app_container_064_11.html

    parentDocument and enforcement will probobly you get what you are looking for.

    If this does not address your situation, your zip code and will bring a more detailed solution.

  • Oracle 11g COE of custom components will not activate

    I have a custom component of Oracle 11 COE who will not activate.

    It is a development server, and I was thinking he was a supplier problem given that the component will not activate little matter how many times I rebooted the WCC server.

    Just to rule COE, I advanced and created a component that is empty, it enabled and rebooted WCC. I get the exact same message of ""needs to restart to activate " "

    What should I look for in WCC to solve this problem?

    If you look under Administration > Configuration for Instance_name, is the component indicated under active components? It could be that the component is enabled, but the alert message disappears forever.

    https://blogs.Oracle.com/Kyle/entry/adding_your_own_alert_messages

    Jonathan

    https://jonathanhult.com

  • Create custom components: lack of problem MovieClip

    Hi guys,.

    I've been creating reusable components customized for a while now, but have noticed a problem with one of my components.

    I have two Clips that represent the status of a phone operator, I want to be able to be styled individually; unavailable, available. The two video clips are found in component assets/_private folder in the library, as well as a container that I use for positioning and swapping/addChild/removeChild every two clips. The bin is emptied when the component is loaded, and then depending on the update settings, the relevant clip is loaded in it, using the AS3 class file.

    Now on the real state of the component I have positioned available clip, and one not available does not exist on the stage.

    When I create the hold and run the MXI to package the component in a distributable ZXP file unavailable clip seems to disappear from the packaging.

    Each video clip in the library needs to exist on the stage so that it can be included in the package? Or I can specify which elements should be included.

    Would be great for this answer! Because it is a very confusing subject!

    I have all of the CBC can send on request, cannot appear to download here.

    Concerning

    Charlie

    OK, I found how to fix this.

    All clips must be placed on the stage in one way or another, either inside the container movieclip (should be deleted on common language runtime) or you can simply place all movieclips on the 2nd picture of a layer on the component, as it is disabled when the component is run.

    Hope this helps anyone else having this problem

  • Flex 4.1 export of custom components in an Application or Module if used in the Module only?

    According to me, Miss me something here:

    "Because a module is loaded into a child domain, it has definitions of classes that are not in the area of the main application. For example, the first module to load the PopUpManager class becomes the owner of the PopUpManager class for the whole application because it records the Manager with the SingletonManager. If later another module tries to use the PopUpManager, Adobe® Flash® Player throws an exception.

    This technique also applies to components. The module that uses the first has the class of the component definition in its field. Therefore, if another module tries to use a component that has already been used by another module, its definition do not match the existing definition. To avoid a mismatch of definitions of element, create an instance of the component in the main application. The result is that the definition of the component is the property of the main application and can be used by modules in any field of the child. »

    I thought that if I use a component in one module then I won't be able to use it in application modules or a brother and I would be able to use it only in the Submodule of this module as the component definitions are in the scope of module which is a child of the scope of the application.

    So I just do a simple example: application with 2 moduleLoaders and 2 modules both using the same 3 components:

    (1) ButtonBar

    (2) DataGrid

    (3) CustomSkinnableComponent (empty, just extends SkinnableComponent) with custom skin (with a Rect 200 x 200 px, extends skin).

    I start the application--> two modules load without problem. Wasn't this supposed to cause error with the second loading module because the first module contains the definitions of components? Or does not result in an error because the component definitions match and match because my component is in the same project in flex, and in this case there is no problem. Problem will be if I have 2 or more RSL with the same definitions of package and class, but different features?

    I do not really understand how to cause incompatibility of definitions component so I can watch to avoid that it... can someone please explain?

    I'm confused and I thought I knew this kind of things. What Miss me?

    Also one last thing:

    I thought that if a module contains component definitions which means it is swf should grow in size-> due to the use of modules. If the application contains the definitions of components would not be what it means the application swf will grow in size and then-> why should I use a module? To save the memory of bodies and images/fonts embeded in the module?

    Bearing also in mind that the skin of a component is also a class definition and I incorporate some large images in there, and I use this skin in 2 modules, wouldn't that require skin to be implemented-> big size of swf application and no module swf as it should?

    Please someone shed some light in my foggy mind

    Post edited by: FM_Flame

    Pretty much:

    public var foo:Object;

    public function runTest (): void

    {

    If (Application.application.foo is nothing)

    Application.application.foo = new SomeClass();

    on the other

    trace (test (application.application.foo));

    }

    If you click the first button, then the second, you should see a type

    incompatibility.

  • Problems with the Transition of custom components bare in s:TileGroup

    I have a problem with transitions play does not correctly on a custom component that is displayed in a < s:TileGroup >.

    Code of the custom component;

    <?xml version="1.0" encoding="utf-8"?>
    <s:SkinnableComponent xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"
     skinClass="com.mydomain.view.skins.SkinFile">
     
     <fx:Metadata>
      [SkinState("normal")]
      [SkinState("photo")]
     </fx:Metadata>
    
     <s:states>
      <s:State name="normal" enterState="invalidateSkinState()" />
      <s:State name="photo" enterState="invalidateSkinState()" />
     </s:states>
     
     <fx:Script>
      <![CDATA[
       override protected function getCurrentSkinState():String {
        return currentState;
       }
      ]]>
     </fx:Script> 
     
    </s:SkinnableComponent>
    

    The skinfile itself is relatively simple

    <?xml version="1.0" encoding="utf-8"?>
    <s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/mx"
      width="300" height="200" width.photo="140"
      >
       
     <fx:Metadata>
      [HostComponent("com.mydomain.view.components.MyComponent")]
     </fx:Metadata>
     <s:states>
      <s:State name="normal"/>
      <s:State name="photo"/>
     </s:states>
     
     <s:transitions>
      <s:Transition autoReverse="true">
       <s:Resize target="{this}" duration="500" />
      </s:Transition>
     </s:transitions>
     
     
     <s:Rect id="rect" radiusX="15" radiusY="15" top="0" right="0" bottom="0" left="0">
      <s:fill>
       <s:LinearGradient rotation="90">
        <s:GradientEntry color="0xffffff" ratio="0" />
        <s:GradientEntry color="0xf0f0f0" ratio="1" />
       </s:LinearGradient>
      </s:fill>
      <s:stroke>
       <s:SolidColorStroke color="0xc0c0c0" weight="1"/>
      </s:stroke>
     </s:Rect>
     
    </s:Skin>
    

    When displaying a couple class MyComponent instantiated in a s:TileGroup as follows;

    <s:TileGroup width="940" verticalGap="20" horizontalGap="20" clipAndEnableScrolling="true">
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
     <components:MyComponent currentState="{theState}" />
    </s:TileGroup>
    

    and saw two buttons to switch the value of the 'State' to 'Normal' or 'photo', it resizes the component properly to the small size, but that goes back to the smaller size to the largest size, it does not play the transition. It just makes small to large immediately.

    The strange thing is, however, that if I use a tag < s:HGroup > instead of < s:TileGroup > it works like a charm, so I guess that's not so much the custom component or skin that is causing problems.

    When I put the transition of the size of the component itself instead of in her skin, then it works as expected, but I think that transitions should be defined in the skin and not in the component itself, right?

    I do something wrong or didn't I just encountered a bug maybe?

    It took me a while to realize it was.  TileLayout organises its elements in a grid of 'cells' and each cell is the same size (the size of the largest component).  Then, each element is placed in its own cell because the horizontalAlign/verticalAlign properties.  By default, TileLayout a horizontalAlign = justify which means that extends the element to the size of the cell.  In order to have an effect of resizing plays on the skin of the element does not really have any effect.  He gets to work when the shrinkage, but fails more and larger, I guess because the increase in the width of an element affects all cells, while the lower has not.

    So I think the right thing to do here is to either wrap a group around the Rect and mentioned target that you like, or the TileGroup.horizontalAlign left/center/right value.

    Here's a simplified example of how you can reproduce it:


    http://ns.Adobe.com/MXML/2009.
    xmlns:s = "library://ns.adobe.com/flex/spark" >
       
            [Bindable] public var test: Boolean = true;
    ]]>
       

       
       
           
               
                   
                       
                       
                       
                       
                   

                   
                   
                       
                           
                       

                       
                           
                       


                   
                   
                   
                       
                   

               
           
       
       
       
           
       
       
       
           
       

       
       
           
           
       

       
       
           
           
       

       
       
           
           
       

       

    If you wish, you can ask about a bug, but I have the feeling that we would not be can not fix because probably you shouldn't use horizontalAlign = justify and change the width of the element at the same time.

  • Add/RemoveChild on custom components?

    I'm using a custom component of reflection and the ability to add and delete as the user wishes.  If you look at this screenshot you can see the reflection on the red and blue boxes at the bottom.

    Picture 1.png

    The effect is added like this but must follow each Canvan I am applying it.

    ...

    < / mx:Canvas >

    < id of reflector: reflector = "myReflector1" target = "{riderOneBox}" alpha = decreasing variation ".5" = ".60" blurAmount = ".60" / >

    In the: WindowedApplication it requires the following.

    " < = xmlns:mx mx:WindowedApplication ' http://www.Adobe.com/2006/MXML "
    ...
    xmlns:reflector = "" com.rictus.Reflector. * ""
    ...

    >

    I was hoping I could do simple a RemoveChild (myReflection1);  But this doesn't seem to be the case.  When I do that, I get an error that says the following...

    TypeError: Error #1034: Type coercion failed: cannot convert com.rictus.reflector::Reflector@1c9e03c1 to mx.states.RemoveChild.

    I'm sure it's possible, but I guess I don't understand the element of reflection relactionship when it is rendered on the screen.  I could just update the alpha to remove it. It would be easy, but I would like if possible actaully removeChild on it.

    Any ideas?

    You don't like it, but it would be easier to achieve (if possible) visible = "false" on the reflector (not sure if this custom component allows) or otherwise the value alpha = '0,0' at the same place, you would have been adding or removing the components of the child?

  • Custom components and passing arguments

    This afternoon I got a great response on the use of custom MXML components and calling a function in the main file of the application. I can do it now using parentDocument, BUT I need to pass the name of a function (for filtering) as a parameter of the function call in the custom component. Here are two code fragments.

    Custom component code

    " < mx:LinkButton label = '10% discount or more" (showTenPercent) click = "parentDocument.filterFunction" / >

    The main application code

    public function filterFunction(functionName:Function):void {}

    merchantDG.visible =true;

    merchantData.filterFunction = functionName;

    merchantData.refresh ();

    }

    public Function showTenPercent(item:Object):Boolean {}

    return (item.merchantOfferCategory ==' 10% ');

    }

    The filterFunction in main application function is called by multiple components, so I think I should keep centralized in the main application. There is probably another way to do it, but I build my Flex skills slowly and need to understand how to proceed. As the code is now, I get an error on the functions and strings.

    I think instead of calling the function inside the custom component, you must do this from the inside of your main application whenever you are initiating the custom component.

    for ex.

    in this way, that you need not prefix parentDocument.

Maybe you are looking for

  • My iMac will not close since the last update

    Since the last update for El Capitan, my iMac does not stop and I hold the power button so he can close. Has anyone else had this problem? I'm nervous to download the update on my Macbook pro in case the same thing happens. Also has anyone had a solu

  • Server of visa without access permissions

    I'm running visa server on a XP system and remote control instruments connected to it. This is the problem, there is a sign prohibited on the server icon visa with a message "access permissions". I checked with MAE, everything was going well. Can any

  • Het expensive Packard Bell Easy Note LJ71

    IK heb een met clean of pilot van mijn cd rom player, sinds een tijdje kan mijn pc driver niet vinden. When ik naar probleemoplosser van Windows ga kan hij het oplossen, hotel geen ze niet vinden wordt er said software. Ook heb ik gezocht op side van

  • is there a driver that will save 2000 machine (only) impression on m1536 network printer?

    We have a LaserJet MFP 1536dnf for use on a Windows network with mixed operating systems. All Win 7 and XP machines are fine, but we have a machine still running Windows 2000. We must print only the capacity for this workstation, scan and fax, is not

  • Work of Smartphones Will private blackBerry with Blend

    The new private device will work with Blackberry mixture? Thank you!