无法在Java swing

时间:2015-07-28 18:04:13

标签: java swing jcombobox

我有下面的代码(汇总),其中我试图从另一个类更新我的组合框的模型。根据我制作的照片,似乎模型得到了更新,但是UI一直显示相同的值,它没有获得新的值。

我尝试过repaint()方法,但它仍然无效。 有什么帮助吗?

public class MainGUI  {

   public JComboBox cmbDatagroupName= new JComboBox();
   public DefaultComboBoxModel modelDataGroup = new DefaultComboBoxModel();

 public void initialize(){

    cmbDatagroupName.setMaximumRowCount(100);
    cmbDatagroupName.setBounds(173, 15, 319, 25);
    modelDataGroup.addElement("Hello");
    cmbDatagroupName.setModel(modelDataGroup);


}

public void testing(DefaultComboBoxModel model){

    JOptionPane.showMessageDialog(null,"Im the method testing. Items "+cmbDatagroupName.getItemCount()); //This prints 1 element
    cmbDatagroupName.setModel(model);
    JOptionPane.showMessageDialog(null,"Updated model. Items "+cmbDatagroupName.getItemCount()); //This prints 6 elements, coming from other class

    }

}

我的其他课程如下所示,我点击按钮调用方法testing(),然后发送新模型。

public class LoginFrm{
JButton okButton = new JButton("Connect");
okButton.addActionListener(new ActionListener() {
    DefaultComboBoxModel modelDataGroup = new DefaultComboBoxModel();
                        modelDataGroup.addElement("1");
                        modelDataGroup.addElement("2");
                        modelDataGroup.addElement("3");
                        modelDataGroup.addElement("4");
                        modelDataGroup.addElement("5");
                        modelDataGroup.addElement("6");
                        new MainGUI().testing(modelDataGroup);
                        dispose();
}

}

就像我提到的那样,MainGUI中的模型获得了正确数量的项目,如果我在内存中打印值,我可以看到它们,只是swing UI不会显示新的模型项目.. 任何帮助表示赞赏!!

0 个答案:

没有答案