java - The content of JComboBox is displayed as a single string, not as separate items -
i using following tablecellrenderer
in jtable
. when click on jcombobox
, see list of values single string (like this: [text1, text2]
), not separate items. error?
tablecolumn columncombobox = table.getcolumnmodel().getcolumn(5); columncombobox.setcellrenderer(getrenderercombobox()); private tablecellrenderer getrenderercombobox() { return new tablecellrenderer() { private jcombobox<string> box = new jcombobox<string>(); @override public component gettablecellrenderercomponent(jtable table, object value, boolean isselected, boolean hasfocus, int row, int column) { box.removeallitems(); (string q : employees[row].getqualification()) box.additem(q); box.setbackground(isselected ? table.getselectionbackground() : table.getbackground()); box.setforeground(isselected ? table.getselectionforeground() : table.getforeground()); return box; } }; }
if want dropdown field in table, done here. then, part create jcombobox:
public void setupsportcolumn(jtable table, tablecolumn sportcolumn) { //set editor sport cells. jcombobox combobox = new jcombobox(); combobox.additem("snowboarding"); combobox.additem("rowing"); combobox.additem("knitting"); combobox.additem("speed reading"); combobox.additem("pool"); combobox.additem("none of above"); sportcolumn.setcelleditor(new defaultcelleditor(combobox)); //set tool tips sport cells. defaulttablecellrenderer renderer = new defaulttablecellrenderer(); renderer.settooltiptext("click combo box"); sportcolumn.setcellrenderer(renderer); }
and if not want, content of dropdown-cell when hover mouse on cell, , elements nice in column, have use html-tags in string passing settooltiptext-method. this:
//set tool tips sport cells. defaulttablecellrenderer renderer = new defaulttablecellrenderer(); string newline = "<br>"; string tooltiptext = "<html>snowboarding"+newline+"rowing"+newline+"knitting"+newline+"speed reading"+newline+"pool"+newline+"none of above</html>"; renderer.settooltiptext(tooltiptext); sportcolumn.setcellrenderer(renderer);
i found answer here: multi-line tooltips in java?
Comments
Post a Comment