Package javafx.beans.property
Class StringProperty
java.lang.Object
javafx.beans.binding.StringExpression
javafx.beans.property.ReadOnlyStringProperty
javafx.beans.property.StringProperty
- All Implemented Interfaces:
Observable
,Property<String>
,ReadOnlyProperty<String>
,ObservableObjectValue<String>
,ObservableStringValue
,ObservableValue<String>
,WritableObjectValue<String>
,WritableStringValue
,WritableValue<String>
- Direct Known Subclasses:
StringPropertyBase
public abstract class StringProperty
extends ReadOnlyStringProperty
implements Property<String>, WritableStringValue
This class provides a full implementation of a
Property
wrapping a
String
value.
The value of a StringProperty
can be get and set with ObservableObjectValue.get()
,
StringExpression.getValue()
, WritableObjectValue.set(Object)
, and setValue(String)
.
A property can be bound and unbound unidirectional with
Property.bind(ObservableValue)
and Property.unbind()
. Bidirectional bindings
can be created and removed with bindBidirectional(Property)
and
unbindBidirectional(Property)
.
The context of a StringProperty
can be read with ReadOnlyProperty.getBean()
and ReadOnlyProperty.getName()
.- Since:
- JavaFX 2.0
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
bindBidirectional
(Property<String> other) Create a bidirectional binding between thisProperty
and another one.<T> void
bindBidirectional
(Property<T> other, StringConverter<T> converter) Create a bidirectional binding between thisStringProperty
and another arbitrary property.void
Set the wrapped value.toString()
Returns a string representation of thisStringProperty
object.void
unbindBidirectional
(Object other) Remove a bidirectional binding between thisProperty
and another one.void
unbindBidirectional
(Property<String> other) Remove a bidirectional binding between thisProperty
and another one.Methods inherited from class javafx.beans.binding.StringExpression
getValue, getValueSafe
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface javafx.beans.Observable
addListener, removeListener
Methods inherited from interface javafx.beans.value.ObservableObjectValue
get
Methods inherited from interface javafx.beans.value.ObservableValue
addListener, getValue, removeListener
Methods inherited from interface javafx.beans.property.ReadOnlyProperty
getBean, getName
Methods inherited from interface javafx.beans.value.WritableObjectValue
get, set
Methods inherited from interface javafx.beans.value.WritableValue
getValue
-
Constructor Details
-
StringProperty
public StringProperty()
-
-
Method Details
-
setValue
Set the wrapped value.- Specified by:
setValue
in interfaceWritableValue<String>
- Parameters:
v
- The new value
-
bindBidirectional
Create a bidirectional binding between thisProperty
and another one. Bidirectional bindings exists independently of unidirectional bindings. So it is possible to add unidirectional binding to a property with bidirectional binding and vice-versa. However, this practice is discouraged.It is possible to have multiple bidirectional bindings of one Property.
JavaFX bidirectional binding implementation use weak listeners. This means bidirectional binding does not prevent properties from being garbage collected.
- Specified by:
bindBidirectional
in interfaceProperty<String>
- Parameters:
other
- the otherProperty
-
bindBidirectional
Create a bidirectional binding between thisStringProperty
and another arbitrary property. Relies on an implementation ofStringConverter
for conversion.- Type Parameters:
T
- the type of the wrappedObject
- Parameters:
other
- the otherProperty
converter
- theStringConverter
used to convert between thisStringProperty
and the otherProperty
- Throws:
NullPointerException
- ifother
orconverter
isnull
IllegalArgumentException
- ifother
isthis
- Since:
- JavaFX 2.1
-
unbindBidirectional
Remove a bidirectional binding between thisProperty
and another one. If no bidirectional binding between the properties exists, calling this method has no effect. It is possible to unbind by a call on the second property. This code will work:property1.bindBirectional(property2); property2.unbindBidirectional(property1);
- Specified by:
unbindBidirectional
in interfaceProperty<String>
- Parameters:
other
- the otherProperty
-
unbindBidirectional
Remove a bidirectional binding between thisProperty
and another one. If no bidirectional binding between the properties exists, calling this method has no effect.- Parameters:
other
- the otherProperty
- Throws:
NullPointerException
- ifother
isnull
IllegalArgumentException
- ifother
isthis
- Since:
- JavaFX 2.1
-
toString
Returns a string representation of thisStringProperty
object.- Overrides:
toString
in classReadOnlyStringProperty
- Returns:
- a string representation of this
StringProperty
object.
-