我在屏幕上的标签中有大量文本字段 - 每个文本字段都必须经过验证。如果输入中有错误,我想要一些特定字段有输入错误的指示。
并非每个文化都理解红色边框意味着错误,因此我需要在靠近,越过或跨越的地方显示文本“错误”。例如,要在文本字段上设置标题边框,用红色表示“错误”,如Java Swing has。所以在选项卡控制器的基类--TabController中,我有像
这样的方法validateNumber(TextField field, String validRangeRegex);
validateIpaddress(TextField field, String validRangeRegex);
这个问题要求相同,但解决方案涉及从StackPane继承子类。 GroupBox / TitledBorder in JavaFX 2?
如何在没有TextField子类化的情况下实现标题边框?
如果在原始JavaFX中无法实现,我想知道JavaScript handler是否可以在文本字段上写“错误”? http://docs.oracle.com/javafx/2/api/javafx/fxml/doc-files/introduction_to_fxml.html#script_event_handlers
答案 0 :(得分:0)
难道你不能只给文本框一个带红色背景颜色的错误样式类吗?并在发生错误的文本框中安装工具提示?
我知道这可能不是一个直接的答案,但我认为没有子类化是不可能的。
安装工具提示:
TextBox t = (TextBox) o;
t.setTooltip(new Tooltip("Please enter a value"));
t.getStyleClass().add("error");
CSS:
.error {
-fx-background-color: #FBE3E4;
-fx-text-fill:#8a1f11;
}
答案 1 :(得分:0)
我发现了这个问题 - 我将使用一个显示“错误”的图像图标。 Adding a small picture on the right side of textField with CSS