JPanel Позиционирование
Почему моя панель миникарты не находится справа от JFrame?
Мой код кажется правильным, но я, должно быть, делаю глупую ошибку. Пожалуйста, помогите мне:)
private static void loadResources() {
minimap.setMaximumSize(new Dimension(minimapWidth, minimapHeight));
minimap.setMinimumSize(new Dimension(minimapWidth, minimapHeight));
minimap.setPreferredSize(new Dimension(minimapWidth, minimapHeight));
panel.setMaximumSize(new Dimension(width, height));
panel.setMinimumSize(new Dimension(width, height));
panel.setPreferredSize(new Dimension(width, height));
minimap.setBackground(Color.red);
panel.setBackground(Color.GRAY);
panel.setLayout(new FlowLayout(FlowLayout.CENTER));
panel.add(minimap);
minimap.setLayout(new FlowLayout(FlowLayout.RIGHT));
Character.createCharacter();
frame.add(panel);
}
1 ответ
Вы устанавливаете макет панели, чтобы быть CENTER. Затем вы добавляете миникарту, так что миникарта тоже центрирована.
По телефону
minimap.setLayout(new FlowLayout(FlowLayout.RIGHT));
Вы просто говорите, что все элементы внутри миникарты (в данном случае ничего) должны располагаться справа относительно прямоугольника миникарты. Поэтому, если вы добавите элемент, скажем, серый прямоугольник, на миникарте вы должны увидеть красный прямоугольник в центре JFrame и серый прямоугольник справа внутри красного прямоугольника.
Вы можете попробовать
panel.setLayout(new FlowLayout(FlowLayout.RIGHT));
Но это может изменить положение другого элемента.