2016-04-07 2 views
0

Я до сих пор нашел this post полезной.Как вы возвращаете JPanel в центре JFrame с помощью BorderLayout?

Но я не мог заставить его работать, особенно эта часть .getLayoutComponent.

Это, как я хочу способ посмотреть в классе:

public JPanel getCentrePanel() { 

    return [CENTER PANEL WOULD BE RETURNED HERE]; 
} 
+0

это должно быть работа 'вернуть yourContainer.getLayout() getLayoutComponent (BorderLayout.CENTER)).' – rdonuk

+0

Я не уверен, если у меня есть контейнер, мой JFrame (frmAdmin) является BorderLayout и у меня есть панель, которую я хочу вернуться в центр (BorderLayout.CENTER). – Kyle

ответ

1

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

BorderLayout layout = (BorderLayout) frmAdmin.getContentPane().getLayout(); 
return (JPanel) layout.getLayoutComponent(BorderLayout.CENTER); 
+0

Во-первых спасибо за быстрый ответ, но я не мог получить эту работу , как показано здесь: https://gyazo.com/54942f9dffa53261214b2167c0d3fb87 Ошибка 1: «Несоответствие типов: невозможно преобразовать из LayoutManager в BorderLayout» Ошибка 2: «Метод getContentPane() не определен для типа AdminView« Ошибка 3: «Несоответствие типа: невозможно преобразовать из компонента в JPanel» – Kyle

+0

Листинг макета для 'BorderLayout'. – rdonuk

+0

Огромное спасибо, я все сейчас работаю, должен был сказать вам раньше. На самом деле я сохранил свою курсовую работу, ура! – Kyle

Смежные вопросы