Как найти JLabels в абсолютной позиции в графическом интерфейсе Java

StackOverflow https://stackoverflow.com/questions/869245

Вопрос

у меня много JLabelс (в том числе ImageIconс) в JPanel.

И это JPanel это всего лишь панель в графическом интерфейсе;есть много других панелей.

Я хочу разместить метки с точными координатами пикселей на их JPanel контейнер.

Как я могу это сделать, не используя GroupLayout?

Это было полезно?

Решение

Видеть Как обойтись без менеджера по расположению (абсолютное позиционирование) в учебниках по Java.

Создание контейнера без менеджера макетов включает в себя следующие шаги.

  1. Установите для менеджера компоновки контейнера значение null, вызвав setLayout(null).
  2. Позвоните в Component класс setbounds метод для каждого из дочерних элементов контейнера.
  3. Позвоните в Component класс repaint метод.

Другие советы

Или

  • установить обычай LayoutManager (Container.setLayout) на панели, которая устанавливает точные позиции, которые вы хотите, или
  • установить null менеджер по расположению (myPanel.setLayout(null);) и установить позиции компонентов извне (Component.setBounds).

Взгляните на MigLayout, который позволяет выполнять абсолютное позиционирование, он не является частью JDK. но отдельная загрузка.

Это очень хорошо с точки зрения менеджеров по расположению и выполнения абсолютного позиционирования, а также множества других функций.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top