Re: Re: How does getProperties() method work?

goddard at seznam.cz goddard at seznam.cz
Sat Jun 23 02:12:20 PDT 2012


Thanks for the replies, I'll get into it.

Regards, Jiri

------------ Původní zpráva ------------
Od: Jeff Martin <jeff at reportmill.com>
Předmět: Re: How does getProperties() method work?
Datum: 22.6.2012 18:04:39
----------------------------------------
Something like this should work:

/**
 * Returns properties for JavaFX object.
 */
public List <Property> getProperties(Object anObj)
{
    // Create list and get class methods
    List <Property> properties = new ArrayList();
    Method methods[] = anObj.getClass().getMethods();
    
    // Iterate over methods, if method returns property, get it
    for(Method method : methods) {
        if(Property.class.isAssignableFrom(method.getReturnType()))
            try { properties.add((Property)method.invoke(anObj, new Object[0]));
}
            catch(Exception e) { System.err.println("Error: " + e); continue; }
    }
    
    // Return properties
    return properties;
}

jeff


On Jun 22, 2012, at 7:08 AM, goddard at seznam.cz wrote:

> I see.
> Is there a way how to query a Node for its set of JavaFX properties then?
> 
> Thanks, Jiri
> 
> ------------ Původní zpráva ------------
> Od: Eva Krejcirova <eva.krejcirova at oracle.com>
> Předmět: Re: How does getProperties() method work?
> Datum: 22.6.2012 14:02:42
> ----------------------------------------
> Hi,
> 
> Node.getProperties returns an ObservableMap which you then can use to
> store any information you want.  It is similar to
> getUserData/setUserData which actually store the user data in the same map.
> It has nothing to do with JavaFX properties of a node.
> 
> We should probably improve the documentation of this method, the current
> javadoc doesn't seem to clarify this.
> 
> Eva
> 
> On 6/22/2012 1:14 PM, goddard at seznam.cz wrote:
>> Hi,
>> 
>> I wanted to query a Rectangle for its properties with getProperties()
method,
> but it always returns empty Map (no elements, zero size).
>> For example, I've got a Rectangle defined like this:
>> 
>> Rectangle red = RectangleBuilder.create()
>>                 .x(100).y(100)
>>                 .width(100).height(100)
>>                 .fill(Color.RED)
>> 
> //.stroke(Color.BLACK).strokeWidth(3).strokeType(StrokeType.OUTSIDE)
>>                 .rotate(45)
>>                 .build();
>> 
>> Regards, Jiri
> 
> 
> 





More information about the openjfx-dev mailing list