本文整理汇总了Java中javafx.scene.control.TextField.setTextFormatter方法的典型用法代码示例。如果您正苦于以下问题:Java TextField.setTextFormatter方法的具体用法?Java TextField.setTextFormatter怎么用?Java TextField.setTextFormatter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javafx.scene.control.TextField
的用法示例。
在下文中一共展示了TextField.setTextFormatter方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addNumericValidation
import javafx.scene.control.TextField; //导入方法依赖的package包/类
private static void addNumericValidation(TextField field) {
field.getProperties().put("vkType", "numeric");
field.setTextFormatter(new TextFormatter<>(c -> {
if (c.isContentChange()) {
if (c.getControlNewText().length() == 0) {
return c;
}
try {
Integer.parseInt(c.getControlNewText());
return c;
} catch (NumberFormatException e) {
}
return null;
}
return c;
}));
}
示例2: start
import javafx.scene.control.TextField; //导入方法依赖的package包/类
@Override
public void start(final Stage stage) throws Exception
{
textField = new TextField();
textField.setId("formatted");
final MaskCharacter[] mask = MaskBuilder.newBuilder()
.appendLiteral("\\")
.appendDigit()
.appendLiteral(",")
.appendHexa()
.appendLiteral(".")
.appendLetter()
.appendLiteral("$")
.appendLetterOrDigit()
.appendLiteral("!")
.appendLowerCase()
.appendUpperCase()
.appendLiteral("U")
.appendAny()
.appendLiteral("^")
.append(1, //
c -> (c == '-' || c == '+' || c == 'M' || c == 'P'),
c -> (c == '+' || c == 'P') ? 'P' : 'M', '_')
.appendLiteral("/")
.build();
textField.setTextFormatter(new TextFormatter<>(new MaskTextFilter(textField, true, mask)));
final Scene scene = new Scene(textField, 200, 50);
stage.setScene(scene);
stage.show();
}
示例3: initTextFormater
import javafx.scene.control.TextField; //导入方法依赖的package包/类
public static void initTextFormater(TextField textField, MaxActValue maxActValue) {
textField.setTextFormatter(new TextFormatter<>(new NumberStringConverter()));
textField.setTextFormatter(new TextFormatter<>(new NumberStringConverter(), null,
FormUtils.integerFilter(
maxActValue.getMinValue().intValue(),
maxActValue.getMaxValue().intValue()
)));
textField.textProperty().bindBidirectional(maxActValue.actValueProperty(), new NumberStringConverter());
}