2017-01-30 1 views
-3

У меня есть JFrame с двумя панелями. Верхняя панель предназначена для отображения графики. Нижняя панель отображает статус. Две панели имеют разные цвета. Когда я пытаюсь изменить текст JLabels на нижней панели, он создает текст в верхней части верхней панели. Как изменить код, чтобы он отображался только внизу. Вот код:изменение ярлыка на панели в нижней части моего JFrame помещает текст вверху

public void setManInfo(String manNews) { 
     manInfo.setText(manNews); 
    } 

manInfo - это моя JLabel. Он находится на панели с GridBagLayout.

+1

В будущем, и если вам нужна дополнительная помощь, отправьте правильное [mcve], когда вы зададите вопрос. – camickr

ответ

1

Верхняя панель предназначена для отображения графики.

он создает текст в верхней части верхней панели.

Возможно, потому что ваша обычная картина неверна.

Пользовательская покраска выполняется путем переопределения метода вашей панели панели paintComponent(...). И не забудьте вызвать super.paintComponent(...), чтобы убедиться, что фон правильно покрасился, и у вас нет артефактов.

Для получения дополнительной информации и рабочих примеров ознакомьтесь с разделом из руководства Swing по телефону Custom Painting.