2017-08-18 83 views
-1

我想從SQL中的表中獲取值,並在javafx中的tabpane中的選項卡中顯示它們。例如,表中包含的值如下:如何從sql中獲取值並在javaFX的選項卡中顯示它們?

---------------------------------- 
| Column1 | Column2 | Column3 | 
---------------------------------- 
| 1  | Text1 | something1 | 
---------------------------------- 
| 2  | Text2 | something2 | 
---------------------------------- 

我想在兩個選項卡中顯示它們,每個值都有文本字段。我試過了,但它只顯示了第一個值的1個選項卡。

這是我的代碼:

Clas12 a = new Clas12(); 
Tab tab = a.getTab(); //this gets a tab with textfields on it 

int i = 1; 
while (rs.next()) { 
    tab.setText("#" + rs.getString(2)); 
    a.getTabPane().getTabs().add(tab); 
    a.fillTextFields(rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), 
      rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8), rs.getString(9), rs.getString(10)); 
} 

希望你能幫助我。如果你想要其他細節,請告訴我。

+0

你的'TabPane'在哪裏? 'a.getTabs()'在哪裏?你只是抓住一個「Tab」,所以你只會寫一個「Tab」。 – Sedrick

+0

TabPane在'Clas12'中,我通過'getTabPane()'方法得到它。 'getTabs()'在'Clas12'中。 'Clas12'是'tabPane'所在的FXML文件的控制器類 –

回答

0

您的問題是,您嘗試添加兩個選項卡與相同的對象選項卡。

       Clas12 a = new Clas12(); 
        // Tab tab = a.getTab();this is your problem 

        int i = 1; 
      while (rs.next()) { 
       tab=new Tab(); //this gets a tab with textfields on it 
       tab.setText("#" + rs.getString(2)); 
       a.getTabPane().getTabs().add(tab); 
       a.fillTextFields(rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), 
       rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8), rs.getString(9), rs.getString(10)); 
    } 
相關問題