Java 文本字段点击 Tab 创建标签

发布于 2025-01-04 08:04:21 字数 199 浏览 1 评论 0原文

我正在尝试创建一个类似于 Stackoverflow 流程“提问”页面中的“标签”字段的文本字段。也就是说,每次用户点击选项卡时,前面的文本都会被包含在彩色圆角矩形中并成为“标签”。

我已经开始通过扩展 JTextField 来做到这一点;然而,这是相当乏味的,尤其是因为我正在做定制绘画。

您有什么想法如何解决这个问题吗?

提前致谢!

I am trying to create a text field similar to the 'tags' field in the Stackoverflow flow 'ask a question' page. That is, every time the use hits tab, the preceding text gets enclosed in a colored rounded rectangle and becomes a 'tag'.

I have started to do this by extending a JTextField; however, it is quite tedious, especially since I am doing custom painting.

Do you have any ideas how to approach this?

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

稀香 2025-01-11 08:04:21

在“提问”页面上,文本字段中的文本变成一个按钮,因此您现在有两个组件。

第一个问题是为什么要使用 Tab 键进行此处理。用户如何能够离开文本字段。所有 GUI 的设计都应易于使用键盘和鼠标。

因此,我将从包含单个文本字段的 JPanel 开始。然后,当按下“Enter”键时,您可以从文本字段中删除文本,并使用该文本创建一个 JButton,并将按钮插入面板的位置 0。您可以通过向文本字段添加 ActionListener 来处理 Enter 键来完成此处理。

On the "ask a question" page the text from the text field becomes a button so you now have two components.

First question is why would you use the tab key for this processing. How will the user be able to move off the text field. All GUI's should be designed for ease of use with the keyboard as well as the mouse.

So I would start with a JPanel that contains a single text field. Then when the "Enter" key is pressed you remove the text from the text field and create a JButton with the text and insert the button at position 0 of the panel. You can do this processing by adding an ActionListener to the text field to handle the Enter key.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文