搜索热词
我有这个代码,我想从jcomboBox获取所选项目,但是当我运行我的项目时,它给我复制打印所选项目的值和java.Lang.NullPointerException
这是代码:
private void jComboBox4ItemStateChanged(java.awt.event.ItemEvent evt) {
// TODO add your handling code here:
if (evt.getStateChange()==ItemEvent.SELECTED){
String a=String.valueOf(jComboBox4.getSelectedItem());
System.out.print(a);
try{
String del2="select distinct PTYPE from Projects inner join project on projects.PNUMBER=(select pro_id from project where pro_name='"+a+"')";
psst=con.prepareStatement(del2);
String td2;
DefaultComboBoxModel mode2 = new DefaultComboBoxModel();
ResultSet RSS=psst.executeQuery();
while(RSS.next()){
td2=RSS.getString("PTYPE");
mode2.addElement(td2);
jComboBox7.setModel(mode2);
}
}
catch(sqlException ex){
JOptionPane.showMessageDialog(null,ex.toString());
}
}
最佳答案
我假设你在itemStateChanged()方法中有这个代码.你得到它两次的原因是它既选择新值又取消选择旧值.
您的代码应该类似于:
myCombo.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
if(e.getStateChange() == ItemEvent.SELECTED) {
String a=jcomboBox.getselecteditem().toString();
System.out.print(a);
}
}
});
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。