Как я могу сделать JLabel правильно выровненным в контейнере? - PullRequest
0 голосов
/ 03 июля 2018

У меня есть вертикальная коробка, которую я называю родителем. Я добавляю JLable, затем JTextArea. следующий Затем я создаю два вертикальных контейнера Box, называемых вправо и влево. Затем я добавляю 2 JLables к ним и помещаю два контейнера Box в горизонтальный Box, называемый Bot. Бот добавляется в родительскую коробку, которую я впервые создал

Эти две метки нарисованы рядом друг с другом, в центре. Первый выровнен по левому краю, второй - по правому краю.

Я хочу, чтобы они оба были оправданы, чтобы они не были рядом друг с другом код CODE

Box boxParent = Box.createVerticalBox();
      String indName="test";
      String indDescription="Description";

      Box boxTitle = Box.createHorizontalBox();
      boxTitle.add(new JLabel(" Indicater:"));
      boxTitle.add(new JLabel(in    dName));
      boxParent.add(boxTitle);

      JTextArea description = new JTextArea(indDescription,5,2);
      boxParent.add(description);

      Box bot= Box.createHorizontalBox();
      Box right = Box.createVerticalBox();
      right.add(new JLabel("right"));
      right.setAlignmentX(Component.LEFT_ALIGNMENT);
      Box left = Box.createVerticalBox();
      left.setAlignmentX(Component.LEFT_ALIGNMENT);
      left.add(new JLabel("left"));
      bot.add(right);
      bot.add(left);

      boxParent.add(bot);   

1 Ответ

0 голосов
/ 04 июля 2018

Я хочу, чтобы они оба были правильно выровнены, чтобы они не были рядом друг с другом. Код КОД

Не уверен, что понимаю ваше требование. Они оба не могут быть правильно оправданы, так как находятся на одной линии.

Если вам нужно пространство между двумя компонентами, возможно, вы захотите:

  bot.add(right);
  bot.add(Box.createHorizontalGlue());
  bot.add(left);
...