gpt4 book ai didi

java - 如何延迟填充第二个 JComboBox 直到选择第一个 JComboBox

转载 作者:行者123 更新时间:2023-12-01 14:20:06 27 4
gpt4 key购买 nike

我有 2 个 JComboBox,在第一个 JComboBox 上选择一个项目后,第二个会从数据库中填充。问题是,每次我输入一个字母时,第二个 jcombobox 都会填充。我想让第二个 jcombobox 等待,直到第一个 jcombobox 中的项目完成输入。

    private void jobCdItemStateChanged(java.awt.event.ItemEvent evt) {                                       
if (evt.getStateChange() == ItemEvent.SELECTED
&& jobCd.getSelectedItem() != "Select..."
&& jobCd.getSelectedItem().toString().length() > 0) {
populatePartNoListFilter();
}
}

最佳答案

一些代码将有助于准确地了解您在做什么,但我的猜测是您的第一个组合是可编辑的,并且您正在使用每次击键时都会调用的事件监听器来填充第二个组合。

根据documentation当组合可编辑时使用 ActionListener 应该可以工作:

The ActionListener will receive an ActionEvent when a selection has been made. If the combo box is editable, then an ActionEvent will be fired when editing has stopped.

如果您正在使用 ActionListener 但仍然找不到该行为满足您的需求,您可以通过在第一个组合上添加 FocusListener 来填充第二个组合,然后将填充第二个的代码移至其 focusLost()方法。

如果此选项也不适合您的需求,我建议您阅读documentation对于不同的可用事件,或者给出您正在寻找的行为的详细描述,以便有人可以提出您需要执行的事件处理的建议。

关于java - 如何延迟填充第二个 JComboBox 直到选择第一个 JComboBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17685400/

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