Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java - JPanel with margins and JTextArea inside

I want to create something like this:

Centered text area

Main panel has its margins (x), and TextArea in the center of that panel which almost fills up the panel. At the bottom is another panel with custom size (height y), which can be toggled visible and unvisible with some shortcut. Bottom Panel has FlowLayout and few elements.

The problem is I have no idea how to do this.

BoxLayout has no margins.

I tried with GridBagLayout but I doesn't work or I can't understand it enough :(

I tried also with setting JTextArea margins

textMain.setMargin(new Insets(insetTop, insetLeft, insetBottom, insetRight));

but when there is a lot of text, top and bottom margin disappear. So now I'm trying with Panels.

Can someone help me with this please?

like image 488
Jan Kowalski Avatar asked Mar 05 '12 11:03

Jan Kowalski


1 Answers

there are two ways

  • use propers Borders, in this case EmptyBorders

  • use proper LayoutManager, BorderLayout(int horizontalGap, int verticalGap), GridLayout(int rows, int cols, int hgap, int vgap),

easiest way would be use EmptyBorders

like image 56
mKorbel Avatar answered Oct 13 '22 08:10

mKorbel