базы данных в Jtable и добавить Jcheckbox в последний столбец всех строк - PullRequest
0 голосов
/ 16 декабря 2011

С тех пор, как я начинающий, концепция Jtable сильно изменила мой мозг.с трудом я смог прочитать базу данных и добавить ее в jtable CODE, приведенный ниже.но я застрял, как добавить JCHECKBOX в последнюю колонку того же стола.

public class ttt extends JFrame{
ResultSet rs;
int colcount;
String[] headers;
Connection con;
Statement st;
ttt(){
final Vector columnNames = new Vector();
    final Vector data = new Vector();
  JPanel panel=new JPanel();
  try{
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
         System.out.println("Driver loaded");

         // Establish a connection
       con= DriverManager.getConnection
           ("jdbc:odbc:ysr");
         System.out.println("Database connecteddddd");

         // Create a statement
         st = con.createStatement();
         ResultSet rs = st.executeQuery("SELECT
   Block_Name,Panchayat_Name,Village_Name," +
                " Habitation_Name,Scheme_Name,Sanction_Amount FROM 

ysr2011 where Habitation_Name= '10th mile' ");
ResultSetMetaData md = rs.getMetaData();

int columns = md.getColumnCount();
for (int i = 1; i <= columns; i++) {
columnNames.addElement( md.getColumnName(i) );
}
while (rs.next()) {
Vector row = new Vector(columns);
for (int i = 1; i <= columns; i++) {
row.addElement( rs.getObject(i) );
}
data.addElement( row );
}
}
catch(Exception e){}
JTable table = new JTable(data, columnNames);
JScrollPane scrollPane = new JScrollPane(table);
panel.add(scrollPane);
add(panel);
}
 public static void main(String arg[])
{
try
{
ttt frame=new ttt();
frame.setSize(550,200);
frame.setVisible(true);
}
catch(Exception e)
{}
}
}

ЛЮБАЯ ПОМОЩЬ ДЕЙСТВИТЕЛЬНО ДОБРО ПОЖАЛОВАТЬ.СПАСИБО ЗА ПРЕДЕЛА.

1 Ответ

1 голос
/ 20 декабря 2011

Вы бы добавили флажок здесь:

int columns = md.getColumnCount();
for (int i = 1; i <= columns; i++) {
     columnNames.addElement( md.getColumnName(i) );
}
columnNames.addElement("Check Box");
while (rs.next()) {
    Vector row = new Vector(columns + 1);
    for (int i = 1; i <= columns; i++) {
        row.addElement( rs.getObject(i) );
    }
    row.addElement(new JCheckBox());
    data.addElement( row );
}

Используйте свой собственный заголовок столбца. Вам также нужно будет более полно определить флажки, потому что в итоге вы добавите тесты для метода isSelected.

...