2013-08-17 6 views
0

좋은 하루에 한 번씩, 여기에 약간의 도움이 필요합니다. 내 데이터베이스를 연결하고 그 항목을 JComboBox에 보여줄 수있었습니다. 순간적으로 나는 나의 JComboBox에 항목을 변경할 때마다 내 JTextField에 표시 될 항목은 항상 JComboBox의 첫 항목입니다. 난 내 JComboBox에JComboBox에서 선택한 항목을 JTextField에 표시

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을 변경하기 때문에 내 JText 필드에 나타나는 항목은 내 Jcombobox에서 두 번째, 세 번째, 네 번째 등을 선택한 경우에도 항상 내 comboBox의 첫 번째 항목입니다. 정말 고맙습니다.

답변

0

을보십시오 :

If(event.getStateChange() == ItemEvent.SELECTED) 
      { 
      event.getSource(); 
// It returns the selected item 
//you also can check it by: 
     System.out.println(event.getSource()); 
} 
관련 문제