카드 레이아웃이있는 방법을 통해 하나의 패널이 추가됩니다. 그리고 다른 하나는 객체를 통해 메소드에 전달됩니다. 문제는 카드 레이아웃의 패널이 패널 "2"대신 패널 "1"을 표시한다는 것입니다. 패널 "2"가 메소드에 전달조차되지 않는 것과 같습니다. 나는 내가 할 수있는만큼 많은 코드를 단순화하기 위해 노력카드 레이아웃이 잘못된 패널을 표시합니다.
오류가 ....이 없습니다 :
일등석 :
public class Game extends JFrame {
private CardLayout cl;
private JPanel MAIN;
private JPanel FIRST;
public Game(){
FIRST = new JPanel();
FIRST.setLayout(new BorderLayout());
cl = new CardLayout();
MAIN = new JPanel();
MAIN.setLayout(cl);
}
public void Show(){
MAIN.add(FIRST, "1");
cl.show(MAIN, "2");
add(MAIN);
}
public void addPanel2(JPanel panel){
MAIN.add(panel, "2");
}
}
2 등석 :
public class meni {
private JPanel SECOND;
Game nova = new Game();
public meni(){
SECOND = new JPanel();
SECOND.setLayout(new GridBagLayout());
nova.addPanel2(SECOND);
}
}
Main 클래스 :
public static void main(String[] args){
Game ticFrame = new Game();
meni luk = new meni();
ticFrame.show();
ticFrame.setTitle("Hey");
ticFrame.setSize(600,600);
ticFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ticFrame.setLocationRelativeTo(null);
ticFrame.setVisible(true);
}
}
알겠습니다. 매우 감사합니다! – quadrar