GridBagLayout. JLabel. Multiline - Java

Узнай цену своей работы

Формулировка задачи:

Такое дело: использую GridBagLayout в качестве менеджера компоновки моего JFrame. Попытался создать хотя бы одну ячейку, внутри которой JLabel с большим текстом. Хотел, чтобы текст выводился в ячейку, а когда доходил до её края, переводил строку. Проблема multiline решилась добавлением тега <html></html>, но вот каким образом JLabel поместился в ячейке (прилагаю скриншот). код:
Листинг программы
  1. public class LabFrame extends JFrame
  2. {
  3. public LabFrame()
  4. {
  5. super("Девушка и её молодые люди");
  6. setLayout(new GridBagLayout());
  7. GridBagConstraints сonstraints = new GridBagConstraints();
  8. сonstraints.gridx = 0;
  9. сonstraints.gridy = 0;
  10. JLabel infoLabel = new JLabel("<html>Задача: Девушка пригласила на свидание k молодых людей. Каждый молодой человек имеет привычку опаздывать на случайное время с показательным распределением со своим средним О». Девушка ждёт первого пришедшего и с ним уходит. Случайная величина О· - время ожидания девушкой.</html>");
  11. add(infoLabel, сonstraints);
  12. }
  13. }
Если убрать менеджера, всё нормально Подскажите пожалуйста, может какие-то ограничения для GridBagConstraints забыл отметить?

Решение задачи: «GridBagLayout. JLabel. Multiline»

textual
Листинг программы
  1. сonstraints.weightx = 1;
  2. сonstraints.weighty = 1;
  3. сonstraints.fill = GridBagConstraints.BOTH;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.867 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут