我想用数据库中的值创建一个动态标签。
我已经尝试过以下代码,但它对我没用。
public void Change (KeyEvent event) throws IOException {
String q="select * from Normal_report";
try {
pst=con.prepareStatement(q);
rs=pst.executeQuery();
while(rs.next()){
for (int i=0; i<10; i++){
Label ab=new Label();
Button btn=new Button();
vbox.getChildren().add(ab) ;
vbox.getChildren().add(btn) ;
}
ab.setText(rs.getString("test_id"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
答案 0 :(得分:0)
我不完全确定你要完成什么,但你应该解决这个问题:
while(rs.next()){
for (int i=0; i<10; i++){
Label ab=new Label();
Button btn=new Button();
vbox.getChildren().add(ab) ;
vbox.getChildren().add(btn) ;
}
-> ab.setText(rs.getString("test_id")); //move inside loop or keep reference outside
由于标签ab无法到达循环外部。