每个人都过得愉快,我需要一点帮助。我能够连接我的数据库并将这些项目显示给JComboBox,我现在的摇摆是每当我更改我的JComboBox上的项目时,我的JTextField上显示的项目始终是我的JComboBox中的第一项,即使我点击我的JComboBox中的第二个或第三个项目
public void JComboBoxToJTextFlied()
{
String dataSource = "CheckWriterDB";
String dbURL = "jdbc:odbc:" _ dataSource;
String temp = (String)listOfSuppliers.getSelectedItem();
String sql = (select Suppliers from SuppliersTable where Suppliers=?)
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection connect= DriverManager.getConnection(dbURL, "", "");
PrepareStatement pst = connect.prepareStatement(sql);
pst.setString(1, temp);
resultSet result = pst.executeQuery();
//My Action perform so that everytime i change the item in my JComboBox
the new item will be shown in my JTextField
listOfSuppliersCombo.addItemListener(new ItemListener()
public void itemStateChange(ItemEvent event)
{
If(event.getStateChange() == ItemEvent.SELECTED)
{
try
{
if(result.next())
{
String add = result.getString("Suppliers")
newSuppliersEntryField.setText(add);
}
}
catch()
{
system.out.println("Your error is: " + e)
}
}
}
);
}
catch(Exception e)
{
System.out.println("Your error is: " + e)
}
}
注意:listOfSupplierCombo是我的JComboBox,newSuppliersEntryField是我的JTextField。
如何改进我的代码,以便每次更改JcomboBox中的项目时,它都会在我的JTextField中显示相同的项目?因为每次我在JcomboBox中更改ITem时,即使我在我的Jcombobox中选择了第二个,第三个,第四个等,我的JText字段中出现的项目也始终是我的comboBox中的第一个项目。非常感谢。
答案 0 :(得分:0)
试一试:
If(event.getStateChange() == ItemEvent.SELECTED)
{
event.getSource();
// It returns the selected item
//you also can check it by:
System.out.println(event.getSource());
}