具有内部字段或预格式化格式的 JTextField,类似于 Windows 中的 ip 字段
我想创建一个用于日期的文本字段,并且具有 dd.mm.YYYY
格式。现在我希望用户只输入数字,而不是点。因此,该字段将如下所示:
_ _. _ _ . _ _ _ _
因此,当用户想要输入日期时:例如,2010 年 5 月 15 日,他只会输入序列 15052010 中的数字。
另外,我想,当他按下向左或向右箭头时,光标从一个字段(不是 JTextField,而是 JTextField 中的字段)转到下一个字段。假设我有一个 JTextField,其中包含以下文本: 15.05.2010
如果用户在开头并按右箭头,则光标应转到 .05
> 领域。
我希望你能理解我,因为现在我不知道如何做到这一点,或者至少不知道如何在谷歌上寻找它。
I want to create a text field that will be for dates and will have dd.mm.YYYY
format. Now what I want the user to type only the numbers, not the dots to. So the field would be like:
_ _. _ _ . _ _ _ _
So when the user wants to type the date: 15.05.2010 for example, he will only type the numbers in the sequence 15052010.
Also I would like, when he presses on left or right arrow, the cursor to go from one field (not JTextField, but field in the JTextField) to the next. So lets say I have JTextField with this text in it: 15.05.2010
If the user is on the beginning and he presses the right arrow, the cursor should go to the .05
field.
I hope you understand me because right now I don't have any idea how to make this, or at least how to look for it on google.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
好吧,这里有 4 个课程可以解决您的问题。
就我而言,它的版本控制但 IP 地址具有相同的结构,并且很容易修改它。
在下面的类中,我们定义视图:
我们使用一个包含主要逻辑的普通文档(您的更改应该在这里):
这是最后一个带有实现上述所有发布代码的主要方法的文档,您将获得非常好的视图。就我而言,我使用了由点分隔的 4 个文本字段的列表。如果您的数字长度达到 4,您可以使用箭头、制表符或点从一个“窗口”跳转到另一个“窗口”。它将与
FocusAdapter
类的实现一起使用:这里是我们得到的内容:
Well, here are 4 classes that solve your problem.
In my case its version control but IP address has the same structure and its easy to modify it.
in the followed class we define view:
We use a plain document that contains our main logic (your changes should be here):
And this is last one with main method that implements all above posted code and you get pretty good view. In my case I used list of 4 text fields separated by dot. You can jump from one "window" to another by using arrows or tab or dot or if your number length reached 4. It will work with implementation of
FocusAdapter
class:here a view what we got:
干得好
JFormattedTextField
here you go
JFormattedTextField