如何添加复选框,具体取决于表格的列数?。
我有一个ComboBox,我可以从我的数据库中选择一个表,程序将根据您选中的复选框进行选择。 我知道如何获得列数,但我不知道如何制作与该数字一样多的复选框。 根据在comboBox(表格)上选择的项目,数字会有所不同 checkBox使用JFrame:
JComboBox<String> tabla = new JComboBox();
tabla.setBounds(10, 650, 200, 25);
tabla.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (tabla.countComponents() > 0) {
item_sel = tabla.getSelectedItem().toString();
try {
ResultSet rs1 = stmt.executeQuery("select * from "+item_sel);
ResultSetMetaData rsmd = (ResultSetMetaData) rs1.getMetaData();
int columnsNumber = rsmd.getColumnCount();
for(int i = 0; i<= columnsNumber-1; i++) {
//here I add comboBox
}
} catch (SQLException e2) {
// TODO Auto-generated catch block
System.out.println(e2);
}
}
}
});
另外:如何在每个comboBox中设置不同的边界?
答案 0 :(得分:0)
如果是oracle,则可以通过在where子句中传递table_name来获取user_tab_columns表中的列名列表。迭代列表,可以使用列名创建复选框。
对于独立于数据库的解决方案,您可以使用JDBC ResultSet来获取列数。请参阅get columns number from ResultSetMetaData
希望有所帮助