2013-12-26 1 views
0

1.I имеют JComboBox которая становится значение из базы данных, 2. После выбора на величину я хочу, чтобы отобразить эту конкретную строку в JTable,получать значения в JTable Upon seletio на jcombox

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
    Object obj = jComboBox1.getSelectedItem(); 
    String tmpr = obj.toString(); 
    Rtable rObj = new Rtable(); 
    rObj.setUserName(tmpr); 
} 

private void Update_table(){  
    String Sql = "SELECT * FROM r_db1.dbo.user_names " + jComboBox1.getSelectedItem() 

Я получаю сообщение об ошибке, как "UnsupportedOperationException("Not supported yet.")"

+0

Можете ли вы опубликовать [SSCCE] (http://sscce.org). –

+0

Возможно, слушатель все еще остается заглушкой; во избежание использования графического редактора на данном этапе разработки. – trashgod

+0

Должен ли я сделать jtable, написав код, вот почему я получаю ошибку. – user3135761

ответ

0
Try this 
use loadcombo() method to load ur jcombobox. 

void loadcombo() 
    { 
     try 
     { 
      Connection con=null; 
      Statement st=null; 
      ResultSet rs=null; 

      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
      String url=null,userID=null,password=null; 
        String dbFileName=null; 
        String sql=null; 

        dbFileName = "C:/db.accdb"; 
           //userID = "Admin"; 
           password = "***"; 
        url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};"+ 
          "DBQ="+dbFileName+";"+ 
          "Pwd="+password+";"; 
        //sql = "SELECT * FROM tblUserProfile"; 
        con=DriverManager.getConnection(url);//,"system","manager" 
        //con=DriverManager.getConnection("jdbc:odbc:shop","system","manager"); 
      st=con.createStatement(); 

      rs= st.executeQuery("select distinct(Name) from Table"); 
       while(rs.next()) 
      { 
       jComboBox.addItem(rs.getString(1)); 
        } 
       st.close(); 
         con.close(); 
     } 
     catch(Exception e) 
     { 
      System.out.println("GG"+e); 
     } 

    } 


use jcombobx actionlistener to load data into jtable. 


jComboBox.addActionListener(new ActionListener(){ 


     public void actionPerformed(ActionEvent ae){ 
      try 
     { 
      Connection con=null; 
      Statement st=null; 
      ResultSet rs=null; 

      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
      String url=null,userID=null,password=null; 
        String dbFileName=null; 
        String sql=null; 

        dbFileName = "C:/db.accdb"; 
        url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};"+ 
          "DBQ="+dbFileName+";"; 
        //sql = "SELECT * FROM tblUserProfile"; 
        Object name=jComboBox.getSelectedItem(); 
        con=DriverManager.getConnection(url);//,"system","manager" 
        //con=DriverManager.getConnection("jdbc:odbc:shop","system","manager"); 
      st=con.createStatement(); 


           model.setRowCount(0); 

     data = getvalue(name); 

     JTable table1=new JTable(data,header); 
     for(int i=0;i<table1.getRowCount();i++){ 
     Object[] d={data.get(i).get(0),data.get(i).get(1),data.get(i).get(2)};model.addRow(d); 


         } 
        con.close(); 
     } 
     catch(Exception e) 
     { 
      System.out.println("GG"+e); 
     } 

     } 
public Vector getvalue(Object name)throws Exception 
{ 
Vector<Vector<String>> vector = new Vector<Vector<String>>(); 

Connection conn = dbConnection(); 
PreparedStatement pre = conn.prepareStatement("select * from Table where Name='"+name+"'"); 
ResultSet rs = pre.executeQuery(); 

while(rs.next()) 
{ 
Vector<String> c = new Vector<String>(); 
c.add(rs.getString(4)); 
c.add(rs.getString(5)); 
c.add(rs.getString(6)); 
vector.add(c); 

} 
/*Close the connection after use (MUST)*/ 
if(conn!=null) 
conn.close(); 

return vector; 
} 


     }); 
Смежные вопросы