GridBagLayout. JLabel. Multiline - Java
Формулировка задачи:
Такое дело: использую GridBagLayout в качестве менеджера компоновки моего JFrame. Попытался создать хотя бы одну ячейку, внутри которой JLabel с большим текстом. Хотел, чтобы текст выводился в ячейку, а когда доходил до её края, переводил строку. Проблема multiline решилась добавлением тега <html></html>, но вот каким образом JLabel поместился в ячейке (прилагаю скриншот).
код:
Если убрать менеджера, всё нормально
Подскажите пожалуйста, может какие-то ограничения для GridBagConstraints забыл отметить?
Листинг программы
- public class LabFrame extends JFrame
- {
- public LabFrame()
- {
- super("Девушка и её молодые люди");
- setLayout(new GridBagLayout());
- GridBagConstraints сonstraints = new GridBagConstraints();
- сonstraints.gridx = 0;
- сonstraints.gridy = 0;
- JLabel infoLabel = new JLabel("<html>Задача: Девушка пригласила на свидание k молодых людей. Каждый молодой человек имеет привычку опаздывать на случайное время с показательным распределением со своим средним О». Девушка ждёт первого пришедшего и с ним уходит. Случайная величина О· - время ожидания девушкой.</html>");
- add(infoLabel, сonstraints);
- }
- }
Решение задачи: «GridBagLayout. JLabel. Multiline»
textual
Листинг программы
- сonstraints.weightx = 1;
- сonstraints.weighty = 1;
- сonstraints.fill = GridBagConstraints.BOTH;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д