1

我正在使用带有 MySQL 的数据库开发 Java swing 应用程序

我需要知道是否可以停用组件,直到从中选择一个元素JComboBox?我必须知道选择第一个 jcombobox 来填充第二个JComboBox;第一个选择是第二个外键,像这样:

ResultSet res = st.executeQuery("SELECT NomF FROM famille_de_type");
while (res.next()) {
    comboBox_Fam_innewT.addItem(res.getString(1));                
}

这是我的例子:

例子

4

3 回答 3

2

当然可以。当您开始工作时调用setEnabled(false)第二个组合框。并添加到第一个组合框ItemListener。这将是听项目选择。

firstComboBox.addItemListener(new ItemListener()
    {
        public void itemStateChanged(ItemEvent e)
        {
            if (e.getStateChange()==ItemEvent.SELECTED)
            {
                Object selectedItem = e.getItem(); // new item selected
                // TODO select values for 2nd combobox
                // TODO fill 2nd combobox
                secondComboBox.setEnabled(true);
            }
        }
    });
于 2012-08-15T07:59:15.263 回答
1

我需要知道在从 jcombobox 中选择一个元素之前是否可以停用组件?

是的。为什么不是组件。设置启用(假)

此外,您可能希望查看ItemListener接口以实现您的目标。这是有关在组合框中处理事件的更多信息。

于 2012-08-15T07:56:13.090 回答
1

因此,在ActionListenrJComboBox,只需调用setEnabled方法,传递false以禁用它们或true启用它们

于 2012-08-15T07:58:01.947 回答