Swing Problemchen



  • Wenn ich folgende Code compileire und dann ausführe ist in dem Frame nur der Button b1 zu sehen. Wieso ? Was habe ich nicht beachtet ?

    JButton b1 = new JButton("B1");
    JButton b2 = new JButton("B2");
    
    Dimension mainFrameD = new Dimension(800, 600);
    Dimension topPanelD = new Dimension(mainFrameD.width, (int)(mainFrameD.height / 2));
    Dimension buttomPanelD = new Dimension(mainFrameD.width, (int)(mainFrameD.height / 2));
    JPanel topPanel = new JPanel();
    JPanel buttomPanel = new JPanel();
    
    topPanel.setSize(topPanelD);
    buttomPanel.setSize(buttomPanelD);
    
    topPanel.add(b1);
    buttomPanel.add(b2);
    
    JFrame f = new JFrame("test");
    f.setSize(mainFrameD);
    Container c = f.getContentPane();
    c.add(topPanel);
    c.add(buttomPanel);
    
    f.show();
    


  • Den LayoutManager ... Voreinstellung für die contentPane ist das Borderlayout und wenn du nur add mit dem Objekt als parameter aufrufst kommt die Komponente in den CENTER-Bereich. Du müsstest das Layout für die contentPane erst auf FlowLayout setzen damit du die Komponenten nebeneinander hast. Ansonsten eben über LayoutManager informieren 🙂



  • ich hätte mal vorhersagen sollen was ich genau machen will:

    in dem frame sollen die beiden panels untereinandern 'stehen' und jeder panel soll einen button enthalten.

    das problem ist jetzt, dass die beiden panels aufeinandern liegen(würde ich sagen).



  • Hätte mich doch erstmal mit dem LayoutManager beschäftigen sollen.

    Thema kann geschlossen werden .


Anmelden zum Antworten