AFAIK, there is no easy solution. One way to achieve this is to use a GlassPane container, as shown here . IMHO, I would just modify the Graphics object of this component to change the "visible" borders, which allows you to draw material that is "outside" on the component itself.
source share