我的 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);
}
}
}
所有连接和一切都在另一个类中,这很好。 请帮忙,我已经好几天了,我不知道我还能做什么!
最佳答案
您需要先实例化 cmbProveedor
,然后才能在 ComboProducto()
方法中使用它。
只需添加以下行:
cmbProveedor = new JComboBox();
您可以将此行放在构造函数中的 ComboProducto()
方法调用之前,或者在使用 cmbProveedor< 之前在
.ComboProducto()
内添加该行
关于java - java 中的组合框无法正常工作 bluej,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29883346/