Search code examples
javaswingcheckboxgrouplayout

Checkboxes out of row in Grouplayout


enter image description here

Like you see in the picture the checkboxes are out of the rows. How I can get them in the rows where the Labels and Comboboxes are in? The Checkboxes activate the ability to search the value in the database. In the code the checkboxes are named "MesswertBox[number]".

        GroupLayout layout2 = new GroupLayout(werte2);
    werte2.setLayout(layout2);

    layout2.setAutoCreateGaps(true);
    layout2.setAutoCreateContainerGaps(true);

    //1

    GroupLayout.SequentialGroup Zeile21 = layout2.createSequentialGroup();

    GroupLayout.ParallelGroup Spalte21 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte23 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte25 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte27 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte29 = layout2.createParallelGroup();

    GroupLayout.ParallelGroup Spalte31 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte33 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte35 = layout2.createParallelGroup();
    GroupLayout.ParallelGroup Spalte37 = layout2.createParallelGroup();

    Spalte21.addComponent(MesswertLabel1).addComponent(MesswertLabel2).addComponent(MesswertLabel3).addComponent(MesswertLabel4).addComponent(MesswertLabel5).addComponent(MesswertLabel6);//.addComponent(EmptyLabel1)
    Spalte23.addComponent(MesswertBox1,25, 25, 25).addComponent(MesswertBox2,25, 25, 25).addComponent(MesswertBox3,25, 25, 25).addComponent(MesswertBox4,25, 25, 25).addComponent(MesswertBox5,25, 25, 25).addComponent(MesswertBox6,25, 25, 25);//.addComponent(EmptyLabel2)
    Spalte25.addComponent(MesswertSpinner1).addComponent(MesswertSpinner2).addComponent(MesswertSpinner3).addComponent(MesswertSpinner4).addComponent(MesswertSpinner5).addComponent(MesswertSpinner6);//.addComponent(EmptyLabel3)
    Spalte27.addComponent(MesswertLabel7).addComponent(MesswertLabel8).addComponent(MesswertLabel9).addComponent(MesswertLabel10).addComponent(MesswertLabel11).addComponent(MesswertLabel12);//.addComponent(EmptyLabel4)
    Spalte29.addComponent(MesswertSpinner7).addComponent(MesswertSpinner8).addComponent(MesswertSpinner9).addComponent(MesswertSpinner10).addComponent(MesswertSpinner11).addComponent(MesswertSpinner12);//.addComponent(EmptyLabel5)

    Spalte31.addComponent(MesswertLabel13).addComponent(MesswertLabel14).addComponent(MesswertLabel15).addComponent(MesswertLabel16).addComponent(MesswertLabel17).addComponent(MesswertLabel18);//.addComponent(EmptyLabel6)
    Spalte33.addComponent(MesswertBox7,25, 25, 25).addComponent(MesswertBox8,25, 25, 25).addComponent(MesswertBox9,25, 25, 25).addComponent(MesswertBox10,25, 25, 25).addComponent(MesswertBox11,25, 25, 25).addComponent(MesswertBox12,25, 25, 25);//.addComponent(EmptyLabel7)
    Spalte35.addComponent(MesswertSpinner13).addComponent(MesswertSpinner14).addComponent(MesswertSpinner15).addComponent(MesswertSpinner16).addComponent(MesswertSpinner17).addComponent(MesswertSpinner18);//.addComponent(EmptyLabel8)
    Spalte37.addComponent(MesswertSpinner19).addComponent(MesswertSpinner20).addComponent(MesswertSpinner21).addComponent(MesswertSpinner22).addComponent(MesswertSpinner23).addComponent(MesswertSpinner24);//.addComponent(Suchen)

    Zeile21.addGroup(Spalte21);
    Zeile21.addGroup(Spalte23);
    Zeile21.addGroup(Spalte25);
    Zeile21.addGroup(Spalte27);
    Zeile21.addGroup(Spalte29);

    Zeile21.addGroup(Spalte31);
    Zeile21.addGroup(Spalte33);
    Zeile21.addGroup(Spalte35);
    Zeile21.addGroup(Spalte37);

    Zeile21.addComponent(MesswertLabel1).addComponent(MesswertBox1,25, 25, 25).addComponent(MesswertSpinner1).addComponent(MesswertLabel7).addComponent(MesswertSpinner7).addComponent(MesswertLabel13).addComponent(MesswertBox7,25, 25, 25).addComponent(MesswertSpinner13).addComponent(MesswertSpinner19);

    GroupLayout.ParallelGroup Zeile22 = layout2.createParallelGroup();


    GroupLayout.SequentialGroup Spalte22 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte24 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte26 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte28 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte30 = layout2.createSequentialGroup();

    GroupLayout.SequentialGroup Spalte32 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte34 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte36 = layout2.createSequentialGroup();
    GroupLayout.SequentialGroup Spalte38 = layout2.createSequentialGroup();

    Spalte22.addComponent(MesswertLabel1).addComponent(MesswertLabel2).addComponent(MesswertLabel3).addComponent(MesswertLabel4).addComponent(MesswertLabel5).addComponent(MesswertLabel6);//.addComponent(EmptyLabel1)
    Spalte24.addComponent(MesswertBox1,25, 25, 25).addComponent(MesswertBox2).addComponent(MesswertBox3).addComponent(MesswertBox4).addComponent(MesswertBox5).addComponent(MesswertBox6);//.addComponent(EmptyLabel2)
    Spalte26.addComponent(MesswertSpinner1).addComponent(MesswertSpinner2).addComponent(MesswertSpinner3).addComponent(MesswertSpinner4).addComponent(MesswertSpinner5).addComponent(MesswertSpinner6);//.addComponent(EmptyLabel3)
    Spalte28.addComponent(MesswertLabel7).addComponent(MesswertLabel8).addComponent(MesswertLabel9).addComponent(MesswertLabel10).addComponent(MesswertLabel11).addComponent(MesswertLabel12);//.addComponent(EmptyLabel4)
    Spalte30.addComponent(MesswertSpinner7).addComponent(MesswertSpinner8).addComponent(MesswertSpinner9).addComponent(MesswertSpinner10).addComponent(MesswertSpinner11).addComponent(MesswertSpinner12);//.addComponent(EmptyLabel5)

    Spalte32.addComponent(MesswertLabel13).addComponent(MesswertLabel14).addComponent(MesswertLabel15).addComponent(MesswertLabel16).addComponent(MesswertLabel17).addComponent(MesswertLabel18);//.addComponent(EmptyLabel6)
    Spalte34.addComponent(MesswertBox7,25, 25, 25).addComponent(MesswertBox8).addComponent(MesswertBox9).addComponent(MesswertBox10).addComponent(MesswertBox11).addComponent(MesswertBox12);//.addComponent(EmptyLabel7)
    Spalte36.addComponent(MesswertSpinner13).addComponent(MesswertSpinner14).addComponent(MesswertSpinner15).addComponent(MesswertSpinner16).addComponent(MesswertSpinner17).addComponent(MesswertSpinner18);//.addComponent(EmptyLabel8)
    Spalte38.addComponent(MesswertSpinner19).addComponent(MesswertSpinner20).addComponent(MesswertSpinner21).addComponent(MesswertSpinner22).addComponent(MesswertSpinner23).addComponent(MesswertSpinner24);//.addComponent(Suchen)



    Zeile22.addGroup(Spalte22);
    Zeile22.addGroup(Spalte24);
    Zeile22.addGroup(Spalte26);
    Zeile22.addGroup(Spalte28);
    Zeile22.addGroup(Spalte30);

    Zeile22.addGroup(Spalte32);
    Zeile22.addGroup(Spalte34);
    Zeile22.addGroup(Spalte36);
    Zeile22.addGroup(Spalte38);

    Zeile22.addComponent(MesswertLabel1).addComponent(MesswertBox1,25, 25, 25).addComponent(MesswertSpinner1).addComponent(MesswertLabel7).addComponent(MesswertSpinner7).addComponent(MesswertLabel13).addComponent(MesswertBox7,25, 25, 25).addComponent(MesswertSpinner13).addComponent(MesswertSpinner19);

    layout2.setHorizontalGroup(Zeile21);
    layout2.setVerticalGroup(Zeile22);  

Solution

  • GroupLayout is generally only used by IDE's because it is relatively complex to code by hand.

    You can try using GridBagLayout which also allows you to position components is a grid. See How to Use GridBagLayout for more information and examples. The tutorial also has a section on using a GroupLayout which might help you.