java中的ComboBox不起作用bluej

时间:2015-04-26 20:49:28

标签: java null jcombobox bluej

我的ComboBox有问题,我到处搜索,我的代码很好..但是当我执行程序时,它显示错误java.lang.NullPointerException

这是我的代码

    package InventarioGUI;

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.sql.SQLException;
    import java.sql.PreparedStatement;
    import java.sql.*;



public class VentanaInventario extends JFrame implements ActionListener
{

    private JComboBox cmbProducto, cmbProveedor;
    ConexionInventario Con = new ConexionInventario();
    private PreparedStatement PST = null;

    DefaultTableModel md;
    JTable tabla;
    Object data [][] = {};
    String cabeza[] = {"Cantidad", "Fecha Entrada", "Precio"};
    JScrollPane scroll;    

   public VentanaInventario()
   {
       super ("Inventario");   

       ComboProducto();
       setLayout(null);

       cmbProducto = new JComboBox();
       cmbProducto.setMaximumRowCount(5);
       cmbProducto.setBounds (120, 10, 150, 20); 
       add(cmbProducto);
    }

    private void ComboProducto(){
        try
        {
           String Sql = "SELECT Nombre_Producto FROM Producto";
           Con.ExeSql(Sql);

            while(Con.RS.next()){
                String pat = Con.RS.getString("Nombre_Producto");
                cmbProveedor.addItem(pat);

            }
       }

        catch(Exception ex){
            JOptionPane.showMessageDialog(null, ex);
        }
    }

   public static void main (String args[])
   {
       try
       {
           VentanaInventario frmVentanaInventario = new VentanaInventario();
           frmVentanaInventario.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
           frmVentanaInventario.setSize (300, 250);
           frmVentanaInventario.setVisible(true);
        }

        catch (Exception ex)
        {
         JOptionPane.showMessageDialog(null, "Error presentado al realizar operación", " VentanaInventario", JOptionPane.ERROR_MESSAGE);
        }
    }
}

所有的连接和一切都在另一个班级,没关系。 请帮助,我有这个日子,我不知道我还能做什么!

1 个答案:

答案 0 :(得分:0)

cmbProveedor方法中使用之前,您需要实例化ComboProducto()

只需添加以下行:

cmbProveedor = new JComboBox();

您可以在ComboProducto()方法调用之前将此行放在构造函数中,或者在使用ComboProducto()之前在cmbProveedor内添加该行。