i have dynamically created jtable jscrollpane. trying resolve border issue. if specify border border around area theres no table data. if create empty border in scrollpane desired border, border around headings not there. include 2 pics can see issue.
the left , bottom border shouldn't there.
this correct, border on heading missing.
i include pertinent code.
one class
private void createpanels(jbutton close, jbutton mapbutton){ jpanel mainpanel = new jpanel(); mainpanel.setlayout(new boxlayout(mainpanel, boxlayout.y_axis)); add(mainpanel); setmodal(true); jpanel toppanel = new jpanel(new borderlayout(0, 0)); toppanel.setpreferredsize(new dimension(400, 30)); jlabel title = new jlabel("mapping flags"); title.setfont(new font("sansserif", font.plain, 17)); jpanel panelfortitle = new jpanel(new flowlayout(flowlayout.left, 270, 30)); panelfortitle.add(title); mainpanel.add(panelfortitle); mainpanel.add(toppanel); jpanel tablepanel = new jpanel(new borderlayout()); tablepanel.setborder(borderfactory.createemptyborder(15, 25, 15, 25)); tablepanel.add(sptable); mainpanel.add(tablepanel); jpanel bottom = new jpanel(new flowlayout(flowlayout.right, 5, 30)); close.setpreferredsize(new dimension(90,22)); mapbutton.setpreferredsize(new dimension(90,22)); bottom.add(close); bottom.add(mapbutton); mainpanel.add(bottom); bottom.setmaximumsize(new dimension(600, 0)); settitle("mapping flags"); setsize(new dimension(650, 380)); setresizable(false); setdefaultcloseoperation(jdialog.dispose_on_close); setlocationrelativeto(null); setvisible(true); }
another class
public void setmappingstable(){ dtm = new defaulttablemodel(new string[]{"style id", "style", "exact match", "carry over", "oem temp"}, 0); mappingstable.setmodel(dtm); mappingstable.setrowheight(20); mappingstable.getcolumnmodel().getcolumn(0).setpreferredwidth(75); mappingstable.getcolumnmodel().getcolumn(1).setpreferredwidth(410); mappingstable.getcolumnmodel().getcolumn(2).setpreferredwidth(130); mappingstable.getcolumnmodel().getcolumn(3).setpreferredwidth(130); mappingstable.getcolumnmodel().getcolumn(4).setpreferredwidth(130); mappingstable.setfont(new font("sansserif", font.plain, 12)); mappingstable.setbackground(color.white); color color = mappingstable.getgridcolor(); // mappingstable.setborder(new matteborder(0, 0, 0, 0, color)); mappingstable.setborder(borderfactory.createlineborder(color.red,1)); adddatatotable(); } public jscrollpane setscrollpane(jtable mappingstable){ sptable = new jscrollpane(mappingstable); sptable.setbounds(45, 230, 700, 300); // sptable.setborder(borderfactory.createemptyborder()); return sptable; }
what can either add in header border or remove bottom, right, left sections not part of jscrollpane data? help. seems no matter never need.
what can either add in header border
you can add matteborder table header. specify border 3 sides of component.
you can table header table
another option might override getpreferredscrollableviewportsize()
method of jtable. can control size of scrollpane.
Comments
Post a Comment