为了账号安全,请及时绑定邮箱和手机立即绑定

如何在多个复选框的顶部添加 JLabel 文本?

如何在多个复选框的顶部添加 JLabel 文本?

明月笑刀无情 2021-11-24 15:25:28
我正在构建 Pizza 表单并遇到了 JLabel 和 JCheckbox 类的问题。我应该构建一个模拟比萨饼烹饪说明的面板,它应该是各种复选框。在一行中应该有 3 个选项,在另一行中应该有 2 个选项。例如:烹饪说明♦Cook Lite ♦Extra Sauce♦Light Sauce ♦做得好♦Light Cheese然而,这就是我得到的:public CookingInstructions() {    JLabel label1 = new JLabel();    label1.setText("Cooking Instructions");    setLayout(new GridLayout(0,2));    add(label1);    cookLite = new JCheckBox("Cook Lite");    extraSauce = new JCheckBox("Extra Sauce");    lightSauce = new JCheckBox("Light Sauce");    wellDone = new JCheckBox("Well Done");    lightCheese = new JCheckBox("Light Cheese");    add(cookLite);    add(extraSauce);    add(lightSauce);    add(wellDone);    add(lightCheese);}我怎样才能让 JLabel(“烹饪说明”)保持在一系列复选框的顶部,而不管那里可能有多少个复选框?
查看完整描述

1 回答

?
DIEA

TA贡献1820条经验 获得超2个赞

你需要添加包含所有 JCheckBox 的新 Jpanel。然后将 Jlabel 和 Jpanel 与 BorderLayout 结合起来。这里执行。


package javaapplication7;


import java.awt.BorderLayout;

import java.awt.FlowLayout;

import java.awt.GridBagLayout;

import java.awt.GridLayout;

import javax.swing.*;  

public class JavaApplication7 extends JFrame {

    JCheckBox cookLite,extraSauce,lightSauce,wellDone,lightCheese;


    JavaApplication7(){  




        JLabel label1 = new JLabel();

        label1.setText("Cooking Instructions");


        setLayout(new BorderLayout());

        add(label1,BorderLayout.NORTH);


        cookLite = new JCheckBox("Cook Lite");

        extraSauce = new JCheckBox("Extra Sauce");

        lightSauce = new JCheckBox("Light Sauce");

        wellDone = new JCheckBox("Well Done");

        lightCheese = new JCheckBox("Light Cheese");


        JPanel panel=new JPanel();

        panel.setLayout(new GridLayout(0,2));

        panel.add(cookLite);

        panel.add(extraSauce);

        panel.add(lightSauce);

        panel.add(wellDone);

        panel.add(lightCheese);


        add(panel,BorderLayout.CENTER);


        setSize(400,500); 

        setVisible(true);  


    }  

    public static void main(String[] args) {

        new JavaApplication7();  

    }


}

希望能帮上忙


查看完整回答
反对 回复 2021-11-24
  • 1 回答
  • 0 关注
  • 127 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信