- java.lang.Object
-
- javafx.beans.binding.StringExpression
-
- javafx.beans.binding.StringBinding
-
- All Implemented Interfaces:
-
Binding<String>,Observable,ObservableObjectValue<String>,ObservableStringValue,ObservableValue<String>
public abstract class StringBinding extends StringExpression implements Binding<String>
基类,提供大多数的实现所需的功能Binding一个的String。StringBinding提供了一个简单的无效方案。 扩展类可以通过调用bind(Observable...)来注册依赖关系。 如果注册的依赖关系中的一个变为无效,则该StringBinding被标记为无效。 用unbind(Observable...)监听依赖关系可以停止。为了提供该类的具体实现,必须实现方法
computeValue(),以基于依赖关系的当前状态来计算该绑定的值。 当get()被调用无效绑定时被调用。参见
DoubleBinding,了解如何扩展这个基类。- 从以下版本开始:
- JavaFX 2.0
- 另请参见:
-
Binding,StringExpression
-
-
构造方法摘要
构造方法 Constructor 描述 StringBinding()
-
方法摘要
所有方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 voidaddListener(InvalidationListener listener)添加一个InvalidationListener,当Observable无效时,它将被通知。voidaddListener(ChangeListener<? super String> listener)添加一个ChangeListener,当ObservableValue的值更改时,将通知它。protected voidbind(Observable... dependencies)开始观察更改的依赖关系。protected abstract StringcomputeValue()计算此绑定的当前值。voiddispose()默认实现为dispose(),为空。Stringget()返回computeValue()的结果。ObservableList<?>getDependencies()getDependencies()的默认实现返回一个空的ObservableList。voidinvalidate()将绑定标记为无效。booleanisValid()检查绑定是否有效。protected voidonInvalidating()如果此绑定变为无效,那么onInvalidating()方法可以被扩展类覆盖。voidremoveListener(InvalidationListener listener)从监听器列表中删除给定的监听器,当Observable的值变为无效时通知Observable。voidremoveListener(ChangeListener<? super String> listener)从监听器列表中删除给定的监听器,当ObservableValue的值发生变化时通知ObservableValue。StringtoString()返回此StringBinding对象的字符串表示形式。protected voidunbind(Observable... dependencies)停止观察更改的依赖关系。-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface javafx.beans.value.ObservableValue
getValue
-
Methods inherited from class javafx.beans.binding.StringExpression
concat, getValue, getValueSafe, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, isEmpty, isEqualTo, isEqualTo, isEqualToIgnoreCase, isEqualToIgnoreCase, isNotEmpty, isNotEqualTo, isNotEqualTo, isNotEqualToIgnoreCase, isNotEqualToIgnoreCase, isNotNull, isNull, length, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, stringExpression
-
-
-
-
方法详细信息
-
addListener
public void addListener(InvalidationListener listener)
说明从界面Observable复制添加一个InvalidationListener,当Observable无效时,它将被通知。 如果同一个监听器被多次添加,那么它将被多次通知。 也就是说,没有检查确保唯一性。请注意,相同的实际
InvalidationListener实例可以安全地注册到不同的Observables。Observable存储对侦听器的强烈引用,这将阻止侦听器被垃圾回收,并可能导致内存泄漏。 建议您在使用后通过调用removeListener注销一个监听器,或者使用WeakInvalidationListener的一个实例来避免这种情况。- Specified by:
-
addListener在接口Observable - 参数
-
listener-listener注册 - 另请参见:
-
Observable.removeListener(InvalidationListener)
-
removeListener
public void removeListener(InvalidationListener listener)
说明从接口Observable复制从监听器列表中删除给定的侦听器,每当Observable的值变为无效时通知Observable。如果给定的侦听器以前没有被注册过(即它从未被添加过),那么这个方法调用是一个无操作的。 如果以前已经添加,那么它将被删除。 如果多次添加,那么只有第一次出现将被删除。
- Specified by:
-
removeListener在接口Observable - 参数
-
listener- 要删除的侦听器 - 另请参见:
-
Observable.addListener(InvalidationListener)
-
addListener
public void addListener(ChangeListener<? super String> listener)
描述从接口ObservableValue复制添加一个ChangeListener,当ObservableValue的值发生变化时,它将被通知。 如果同一个监听器被多次添加,那么它将被多次通知。 也就是说,没有检查确保唯一性。请注意,相同的实际
ChangeListener实例可以安全地注册到不同的ObservableValues。ObservableValue存储对侦听器的强烈引用,这将阻止侦听器被垃圾回收,并可能导致内存泄漏。 建议您在使用后通过调用removeListener注销监听器,或者使用WeakChangeListener的实例避免此情况。- Specified by:
-
addListener在接口ObservableValue<String> - 参数
-
listener-listener注册 - 另请参见:
-
ObservableValue.removeListener(ChangeListener)
-
removeListener
public void removeListener(ChangeListener<? super String> listener)
描述从接口ObservableValue复制从监听器列表中删除给定的监听器,当ObservableValue的值发生变化时通知ObservableValue。如果给定的侦听器以前没有被注册过(即它从未被添加过),那么这个方法调用是一个无操作的。 如果以前已经添加,那么它将被删除。 如果多次添加,那么只有第一次出现将被删除。
- Specified by:
-
removeListener在接口ObservableValue<String> - 参数
-
listener- 要删除的侦听器 - 另请参见:
-
ObservableValue.addListener(ChangeListener)
-
bind
protected final void bind(Observable... dependencies)
开始观察更改的依赖关系。 如果其中一个依赖关系的值发生变化,则绑定被标记为无效。- 参数
-
dependencies- 依赖关系观察
-
unbind
protected final void unbind(Observable... dependencies)
停止观察更改的依赖关系。- 参数
-
dependencies- 停止观察的依赖关系
-
getDependencies
public ObservableList<?> getDependencies()
getDependencies()的默认实现返回一个空的ObservableList。- Specified by:
-
getDependencies在接口Binding<String> - 结果
-
一个空的
ObservableList
-
get
public final String get()
- Specified by:
-
get在接口ObservableObjectValue<String> - 结果
- 当前值
-
onInvalidating
protected void onInvalidating()
如果此绑定变为无效,那么onInvalidating()方法可以被扩展类覆盖。 默认实现为空。
-
invalidate
public final void invalidate()
描述从接口Binding复制将绑定标记为无效。 这迫使重新计算下一次请求的Binding的值。- Specified by:
-
invalidate在接口Binding<String>
-
isValid
public final boolean isValid()
描述从接口Binding复制检查绑定是否有效。
-
computeValue
protected abstract String computeValue()
计算此绑定的当前值。StringBinding必须提供computeValue的实施。- 结果
- 当前值
-
-