gpt4 book ai didi

java - 如何为 JAVA Swing 做最好的查找文本字段

转载 作者:行者123 更新时间:2023-12-02 06:44:57 25 4
gpt4 key购买 nike

如何为 JAVA Swing 执行最佳查找文本字段,如下所示:

enter image description here

最佳答案

这实际上并不是很容易实现,如果您想要在流程结束时获得灵活且可重用的解决方案,则不容易实现。

您需要一个JTextField (嗯,好吧,这是显而易见的),一个 JList和一个 JPopupMenuJWindow .

您需要某种过滤机制,可以采用String并产生 List匹配项,然后可以在 JList 中显示。这将要求您提供 ListCellRenderer针对您的具体实现。

您需要附上DocumentListenerJTextField 。当文档更新/更改时,您需要将文本字段的文本传递到过滤引擎以查找所有可能的匹配项并将它们显示在 JList 中。 .

如果弹出窗口不可见,您需要使其可见,同时考虑到根据文本字段的位置列表可能不适合屏幕。如果它可见,您可能需要重新打包窗口以更好地适应可用选项(如果有)

如果用户离开该字段,您将需要决定是否要根据第一个匹配项自动完成文本、使该字段无效或保留文本原样并关闭弹出窗口(如果弹出窗口可见)。

如果用户单击某个值,您将需要提取 String项目的表示并将其应用到文本字段并关闭弹出窗口。

您需要向文本字段添加键绑定(bind)以容纳向下箭头,该箭头可以打开弹出窗口和/或移动到列表中的第一项。这会导致注意力不集中,因此您需要为此做好准备。

您可能还想为弹出窗口/字段提供 Escape 键盘绑定(bind),以便用户可以关闭弹出窗口

关于java - 如何为 JAVA Swing 做最好的查找文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18754869/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com