K. Tsang wrote: I see you have a + in one those columns allowing user to expand/collapse. This you will need a JTree inside JTable.
Right. You need to use a tree-table component for that. SwingX(from SwingLabs) provides a JXTreeTable component for the same - I think NetBeans has a Outline component for the same.
And for the coloring, you need to write custom renderers. You can read about renderers
here