JPanel Margin в BoxLayout - PullRequest
       20

JPanel Margin в BoxLayout

1 голос
/ 16 апреля 2009

Для пользовательских целей рендеринга я создал класс (axialPanel.java), который расширяет JPanel и переопределяет метод paintComponent. Экземпляр axialpanel добавляется к западной стороне класса контейнера, установленного с BorderLayout. Я хотел бы иметь несколько пикселей поля вокруг аксиальной панели, но установка границы аксиальной панели для экземпляра EmptyBorder с некоторым умеренным размером не работает. Любые мысли о том, как я мог бы сделать это?

Заранее спасибо.

1 Ответ

2 голосов
/ 17 апреля 2009

Ваш метод paintComponent должен учитывать вставки компонента.

Простой способ не беспокоиться об этом - перейти к следующему закрашенному компоненту внутри панели с рамкой, а ваш компонент будет центром BorderLayout.

(Кстати: IMO, это плохая идея, чтобы расширять JPanel, когда вы не хотите панель. Просто расширьте JComponent. Существует различие в компоновке, и также JPanel может или не может быть по умолчанию Непрозрачно в зависимости от того, какая версия PL & F используется (поэтому вам всегда нужно звонить setOpaque, если вам не повезло).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...