2013-05-27 2 views
0

이 jPanel1의 생성자에서 jPanel1 내부의 jPanel2를 채우려고합니다. 이런 식으로.생성자의 jPanel 채우기

public jPanel1(){ 

    initComponents(); // here is created the jPanel2 
    JButton jb= new JButton(); 
    jb.setBounds(new java.awt.Rectangle(0, 22, 400, 270)); 
    this.jPanel2.add(jb); 
} 

J 버튼이 보이지 않습니다. I 생성자에서 jPanel2 경계 인쇄 어쨌든, 난이 얻을 :

'java.awt.Rectangle에가 [X = 0, Y = 0, 폭 = 0, 높이 = 0]

내가 수 예를 들어 다른 버튼 리스너에서이 Jbutton을 추가하면 잘 작동합니다. JPanel1의 수명주기 중 일부에서는 jPanel2가 제한되어 있지만 어디에서 확인할 수없는 것 같군요. 아무도 도와 줄 수 있습니까? 감사합니다. 기본적으로

답변

1

JPanelFlowLayout 사용합니다. 대신 사용해보십시오해야 BorderLayout

public jPanel1(){ 
    initComponents(); // here is created the jPanel2 
    JButton jb= new JButton(); 
    jPanel2.setLayout(new BorderLayout()); 
    this.jPanel2.add(jb); 
} 

당신이 직면하고 초기 문제는 컨테이너가 배치 될 때까지 부모 컨테이너 (jPanel1)의 크기가 레이아웃 매니저를 수 있도록 더 나은 ... 알 수 있다는 것입니다 어때?)

+0

정말 고마워요! 귀하의 솔루션은 매력처럼 일했습니다! 감사! –

+0

귀하의 환영;) – MadProgrammer