2016-09-13 3 views
-1
MyFrame(){ 
    String titel = "Rezept"; 
    JLabel label = new JLabel(titel); 
    JButton abutton = new JButton("Abbrechen"); 
    JButton sbutton = new JButton("Speichern"); 

    JPanel jp1 = new JPanel(); 
    jp1.setLayout(new FlowLayout(FlowLayout.CENTER)); 
    jp1.add(label); 

    JPanel jp2 = new JPanel(); 
    jp2.setLayout(new GridLayout(1,2)); 
    jp2.add(abutton); 
    jp2.add(sbutton); 

    setLayout(new BorderLayout()); 
    setSize(300,500); 
    setDefaultCloseOperation(EXIT_ON_CLOSE); 
    setVisible(true); 
    add(jp1, BorderLayout.NORTH); 
    add(jp2, BorderLayout.SOUTH); 
} 

    public static void main(String[]args){ 
     new MyFrame(); 
    } 

나는 그것을 얻지 못했다. 이 GUI를 실행할 때 아무 것도 출력하지 않습니다.내 GUI가 전혀 인쇄하지 않음

빈 프레임 만 표시됩니다. 여기서 내가 뭘 잘못하고 있니?

+0

일반적으로 프레임의 [content pane] (https://docs.oracle.com/javase/7/docs/api/javax/swing/JFrame.html#getContentPane%28%29)에 항목을 추가합니다. – khelwood

+0

조각 대신 편집 가능한 예제를 게시 할 수 있습니까? – khelwood

+0

다시 칠하기 또는 재 검증 방법을 사용하려고 시도 했습니까? – nowszy94

답변

1

당신이 JPanel의 추가하기 전에 방법 setVisible(true);를 호출하는 경우 당신은 아무것도 볼 수 없을 것입니다 ...

변화와 같은 뭔가 순서 (코드 클래스 "MyFrame이란이 JFrame의 확장"에) :

add(jp1, BorderLayout.NORTH); 
add(jp2, BorderLayout.SOUTH); 
setVisible(true); 

그 후 당신은 볼 수

enter image description here

같은
+1

게시 된 코드에 완전히 setVisible (true)이 표시됩니다. – khelwood

+0

오, 알았어. 대답을 .............. 호출하는 순서를 호출해야합니다. *** 호출 후 *** 설정 후 모든 하위 구성 요소를 추가합니다. –