GWT DoubleBox 方法 setValue 覆盖 setText
GWT DoubleBox method setValue overrides setText
在屏幕中,DoubleBox 值需要显示为以美元为前缀的金额。
因此,我使用了 DoubleBox 的 setText 方法,这样它就可以设置字符串值,但它的值应该是有效的数值,所以在使用 setText 之后,我使用了 setValue 方法来设置数值。
但是,现在在使用 setValue 后,在屏幕上,只有数值出现并且忽略了 setText 的行为。任何建议!
如果您需要自定义值的格式,请将 ValueBox<Double>
与渲染器和解析器一起使用。您可以使用基于 NumberFormat
的 NumberFormatRenderer
,但是没有简单的方法来获取解析器,您必须自己实现一个。
如果您只对显示一个值感兴趣,那么请改用 NumberFormatLabel
(或者可能通过存储值和 return 来自解析器的作弊方式,但这听起来很老套)
DoubleBox
extends ValueBoxBase<Double>
, which defines the setValue
函数。
setValue
internally calls setText
使用提供的渲染器渲染值后。
因此它只会在调用 setValue
.
后覆盖您设置的文本
要能够自定义文本格式,您必须提供自定义渲染器。
不幸的是,只有 DoubleBox
的默认构造函数,它不允许您提供自定义渲染器:
https://gwt.googlesource.com/gwt/+/2.7.0/user/src/com/google/gwt/user/client/ui/DoubleBox.java
因此,您必须创建一个类似于 DoubleBox
的 class,并带有自定义 DoubleRenderer
,可能还有一个自定义 DoubleParser
也是。
在屏幕中,DoubleBox 值需要显示为以美元为前缀的金额。
因此,我使用了 DoubleBox 的 setText 方法,这样它就可以设置字符串值,但它的值应该是有效的数值,所以在使用 setText 之后,我使用了 setValue 方法来设置数值。
但是,现在在使用 setValue 后,在屏幕上,只有数值出现并且忽略了 setText 的行为。任何建议!
如果您需要自定义值的格式,请将 ValueBox<Double>
与渲染器和解析器一起使用。您可以使用基于 NumberFormat
的 NumberFormatRenderer
,但是没有简单的方法来获取解析器,您必须自己实现一个。
如果您只对显示一个值感兴趣,那么请改用 NumberFormatLabel
(或者可能通过存储值和 return 来自解析器的作弊方式,但这听起来很老套)
DoubleBox
extends ValueBoxBase<Double>
, which defines the setValue
函数。
setValue
internally calls setText
使用提供的渲染器渲染值后。
因此它只会在调用 setValue
.
要能够自定义文本格式,您必须提供自定义渲染器。
不幸的是,只有 DoubleBox
的默认构造函数,它不允许您提供自定义渲染器:
https://gwt.googlesource.com/gwt/+/2.7.0/user/src/com/google/gwt/user/client/ui/DoubleBox.java
因此,您必须创建一个类似于 DoubleBox
的 class,并带有自定义 DoubleRenderer
,可能还有一个自定义 DoubleParser
也是。