2017-05-22 110 views
0

我的控制器中有一個名爲selectName的SplitMenuButton,其默認MenuItem爲「無」值。我想創建一個SQL查詢並將結果存儲在MenuButton中。我創建了Statement和ResultSet,但我不知道如何將ResultSet數據存儲在MenuButton中。考慮使用名稱值來創建一個模型,但它不是一個TableView。這是我到目前爲止的代碼:JavaFX:SplitMenuButton:從MySQL查詢中添加元素

private void setMenuButton() { 
    try { 
     pst = conn.prepareStatement("SELECT name FROM myTable"); 
     rs = pst.executeQuery(); 
     while(rs.next()) { 
      //add elements 
     } 
    } catch (SQLException ex) { 
     Logger.getLogger(AddNewProductController.class.getName()).log(Level.SEVERE, null, ex); 
    } 
} 

回答

1

剛剛從結果集中的每個元素創建一個菜單項,並把它添加到菜單按鈕:

private void setMenuButton() { 
    try { 
     pst = conn.prepareStatement("SELECT name FROM myTable"); 
     rs = pst.executeQuery(); 
     while(rs.next()) { 
      String name = rs.getString("name"); 
      MenuItem menuItem = new MenuItem(name); 
      // add event handlers, etc, as needed.. 
      selectName.getItems().add(menuItem); 
     } 
    } catch (SQLException ex) { 
     Logger.getLogger(AddNewProductController.class.getName()).log(Level.SEVERE, null, ex); 
    } 
}