2012-04-11 72 views
1

我是新來的鞦韆,我剛開始工作,因爲我的班級工作。如果問題無關緊要,請原諒我。 我想把一個表格中的數據從數據庫中的一些數據放在一個框架上。我所做的是我創建了一個JFrame表單。這個表格是空白的。現在我正在嘗試填充表格,將其放在滾動窗格中,最後將此滾動窗格添加到我的框架中。在鞦韆上添加表格

我能夠通過從當前幀創建一個新幀來顯示錶。但我想要的是將表添加到當前的Jframe表單。

這裏是我做了什麼:

package com.air.form; 
import com.air.db.Transaction; 
import java.sql.ResultSet; 
import java.sql.ResultSetMetaData; 
import java.util.Vector; 
import javax.swing.JScrollPane; 
import javax.swing.JTable; 



public class FlightDetails extends javax.swing.JFrame { 


    /** Creates new form FlightDetails */ 

    public FlightDetails() { 
     initComponents(); 
    } 
    FlightDetails(String src,String dest) { 
     initComponents(); 
     initialise(src,dest); 
    } 

    @SuppressWarnings("unchecked") 
    // <editor-fold defaultstate="collapsed" desc="Generated Code"> 
    private void initComponents() { 

     setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); 

     javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); 
     getContentPane().setLayout(layout); 
     layout.setHorizontalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGap(0, 603, Short.MAX_VALUE) 
     ); 
     layout.setVerticalGroup(
      layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
      .addGap(0, 300, Short.MAX_VALUE) 
     ); 

     pack(); 
    } 


    public static void main(String args[]) 
    { 
     java.awt.EventQueue.invokeLater(new Runnable() { 
      public void run() { 
       new FlightDetails().setVisible(true); 
      } 
     }); 
    } 
    private void initialise(String src, String dest) 
    { 
     Transaction tn=new Transaction(); 
     try 
     { 


      ResultSet result = tn.ReturnFlightDetails(src,dest); 
      ResultSetMetaData md = result.getMetaData(); 
      int columnCount = md.getColumnCount(); 

      Vector columns = new Vector(columnCount); 

      //store column names 
      for(int i=1; i<=columnCount; i++) 
      columns.add(md.getColumnName(i)); 

      Vector data = new Vector(); 
      Vector row; 

      //store row data 
      while(result.next()) 

      { 
       row = new Vector(columnCount); 
       for(int i=1; i<=columnCount; i++) 
       { 
        row.add(result.getString(i)); 
       } 
       data.add(row); 
      } 
      JTable table = new JTable(data, columns); 
      JScrollPane scrollPane = new JScrollPane(table); 
     } 
     catch(Exception e) 
     { 

     } 

    } 


} 
+0

爲了更好地幫助越早,張貼[SSCCE(HTTP:// SSCCE .org /)(硬編碼一些數據來表示ResultSet)。 – 2012-04-12 08:28:45

+0

'警告:請勿修改此代碼。警告,請刪除5行註釋,這些註釋在破碼中聽起來很可笑。 – 2012-04-12 08:30:44

回答

4

JFrameContainer它具有add方法Component s添加到它。取決於佈局管理器,您還需要傳遞一些約束條件。我在代碼中看不到任何此類調用。您只需創建一個表格,但不會將其添加到任何容器。

由於這是家庭作業,我只是要包括一些額外的鏈接: