我正在尝试实现类似于此处找到的样式的搜索结果弹出列表:
(我并没有尝试实现 Google 搜索,我只是将其用作我正在研究的风格的粗略示例。)
无论如何,我通过使用JList
包含在 a中的 a 来实现这一点,它在 aJPopupMenu
下方弹出JTextField
。
当用户输入搜索词时,列表会发生变化以反映不同的匹配结果。然后我呼吁调整它pack
的大小。JPopupMenu
这可行,但是,它会产生轻微的闪烁效果,因为它实际上隐藏了弹出窗口并显示了一个弹出窗口。(请参阅它明确执行此操作的私有方法getPopup
。 )JPopupMenu
有没有办法让它只是调整自己的大小(除了使用 a JWindow
)?