i'm able create jtable cells rendered use jlist. don't know create different lists add cells.
this code right now
vector<string> categoryreportcolumnnames = new vector<>(); categoryreportcolumnnames.add("categorías"); categoryreportcolumnnames.add("Ítems"); vector<vector<string>> categoryreportvector = controller.getcategoryreportvector(); vectortablecellrenderer renderer = new vectortablecellrenderer(); defaulttablemodel tablemodel = new defaulttablemodel(categoryreportvector, categoryreportcolumnnames); jcategoryreporttable.setmodel(tablemodel); jcategoryreporttable.setenabled(false); (int = 0 ; < categoryreportvector.size() ; i++){ vector<string> categoryitems = controller.getcategoryitems(i); renderer.setlistdata(categoryitems); jcategoryreporttable.getcolumnmodel().getcolumn(i).setcellrenderer(renderer); } jcategoryreport.setvisible(true);
where should send vector, example, change jlist items each row?
thanks
it can better way follows. should not set renderer within loop. thing should create data vector correctly.
modifications of code
//create table columns vector<string> categoryreportcolumnnames = new vector<>(); categoryreportcolumnnames.add("categorías"); categoryreportcolumnnames.add("Ítems"); //create table data vector<vector> categoryreportvector = controller.getdatavector(); //setting tabel model defaulttablemodel tablemodel = new defaulttablemodel(categoryreportvector, categoryreportcolumnnames); jcategoryreporttable.setmodel(tablemodel); //setting table renderer vectortablecellrenderer renderer = new vectortablecellrenderer(); jcategoryreporttable.getcolumnmodel().getcolumn(1).setcellrenderer(renderer); //additional modifications jcategoryreporttable.setenabled(false); jcategoryreporttable.setrowheight(100);
create data vector follows.
use loops , create own code referring
public vector<vector> getdatavector() { vector rowone = new vector<string>(); rowone.add("row1-column1"); vector rowonecategories = new vector(); rowonecategories.add("row1-column2-line1"); rowonecategories.add("row1-column2-line2"); rowonecategories.add("row1-column2-line3"); rowone.add(rowonecategories); vector rowtwo = new vector<string>(); rowtwo.add("row2-column1"); vector rowtwocategories = new vector(); rowtwocategories.add("row2-column2-line1"); rowtwocategories.add("row2-column2-line2"); rowtwocategories.add("row2-column2-line3"); rowtwo.add(rowtwocategories); vector<vector> rowdata = new vector<vector>(); rowdata.add(rowone); rowdata.add(rowtwo); return rowdata; }
Comments
Post a Comment