屏蔽 javafx 文本字段输入
Masking javafx textfield input
我正在使用 javafx 文本字段。我需要输入数字以及应符合格式 ###.###.###.###
的小数
其中小数点根本不可编辑,数字可以是任何数字;不允许其他输入。并非所有数字占位符都需要填写,例如它可能是 1.2 或 2.22.1 甚至 1.222.222.0
我试过使用模式匹配和正则表达式来验证更改后的文本,但仅此而已;它验证输入,它不会使小数字段成为不可编辑的字段,并且工具提示不是一个选项。我不确定还能尝试什么。
我正在尝试找到一种方法,即使在用户键入时,他们也可以看到预期的输入是什么,例如1##.###.###.###。当他们输入数字时,他们不会在文本字段中输入小数,因为它是 'fixed',或者至少看起来是。如果接收到连续的数字输入,则输入的数字在遇到小数点时会跳过小数点并自动转到下一个字段。
例如用户输入 ="1234"
output="123.4##.###.###"
另一个建议是在收到小数时自动移动光标
例如用户输入 =“1.23.4”
输出 = "001.023.004.###"
欢迎提出任何建议,只是为了澄清,“#”是文本字段的一部分 'hint' 而不是实际文本的一部分。
最后,使用带有正则表达式的 UnaryOperator 进行输入控制,并使用 StringCoversion post 处理此处使用的文本 以防其他人遇到此问题。
我正在使用 javafx 文本字段。我需要输入数字以及应符合格式 ###.###.###.###
的小数
其中小数点根本不可编辑,数字可以是任何数字;不允许其他输入。并非所有数字占位符都需要填写,例如它可能是 1.2 或 2.22.1 甚至 1.222.222.0
我试过使用模式匹配和正则表达式来验证更改后的文本,但仅此而已;它验证输入,它不会使小数字段成为不可编辑的字段,并且工具提示不是一个选项。我不确定还能尝试什么。
我正在尝试找到一种方法,即使在用户键入时,他们也可以看到预期的输入是什么,例如1##.###.###.###。当他们输入数字时,他们不会在文本字段中输入小数,因为它是 'fixed',或者至少看起来是。如果接收到连续的数字输入,则输入的数字在遇到小数点时会跳过小数点并自动转到下一个字段。 例如用户输入 ="1234" output="123.4##.###.###"
另一个建议是在收到小数时自动移动光标 例如用户输入 =“1.23.4” 输出 = "001.023.004.###"
欢迎提出任何建议,只是为了澄清,“#”是文本字段的一部分 'hint' 而不是实际文本的一部分。
最后,使用带有正则表达式的 UnaryOperator 进行输入控制,并使用 StringCoversion post 处理此处使用的文本