質問

So I'm creating a calculator that calculates BMR & TDEE. I'm having issues when I run the code because everything shows up, except my radio button groups. Can anyone tell me what I need to add/what I'm doing wrong to get them to show up on the screen?

   private JRadioButton female, male, sedentary, lightlyActive, modActive, veryActive, extrActive;

   private JButton calculate;

   public BMRGUI()

   {

      heightLabel = new JLabel ("Height (in.) ");

      weightLabel = new JLabel ("Weight (lbs) ");

      ageLabel = new JLabel ("Age (yrs)");

      female = new JRadioButton ("Female");
      female.setMnemonic(KeyEvent.VK_C); 
      female.setActionCommand("Female");
      female.setSelected(true);

      male = new JRadioButton ("Male");
      male.setMnemonic(KeyEvent.VK_C); 
      male.setActionCommand("Male");

      ButtonGroup group = new ButtonGroup();
      group.add(female);
      group.add(male);

      female.addActionListener(this);
      male.addActionListener(this);

      sedentary = new JRadioButton ("Sedentary");
      sedentary.setMnemonic(KeyEvent.VK_C); 
      sedentary.setActionCommand("Sedentary");
      sedentary.setSelected(true);

      lightlyActive = new JRadioButton ("Lightly active");
      lightlyActive.setMnemonic(KeyEvent.VK_C); 
      lightlyActive.setActionCommand("Lightly active");

      modActive = new JRadioButton ("Moderately active");
      modActive.setMnemonic(KeyEvent.VK_C); 
      modActive.setActionCommand("Moderately active");

      veryActive = new JRadioButton ("Very active");
      veryActive.setMnemonic(KeyEvent.VK_C); 
      veryActive.setActionCommand("Very active");

      extrActive = new JRadioButton ("Extremely active");
      extrActive.setMnemonic(KeyEvent.VK_C); 
      extrActive.setActionCommand("Extremely active");

      ButtonGroup group2 = new ButtonGroup();
      group2.add(sedentary);
      group2.add(lightlyActive);
      group2.add(modActive);
      group2.add(veryActive);
      group2.add(extrActive);
      sedentary.addActionListener((ActionListener) this);
      lightlyActive.addActionListener((ActionListener) this);
      modActive.addActionListener((ActionListener) this);
      veryActive.addActionListener((ActionListener) this);
      extrActive.addActionListener((ActionListener) this);

      BMRLabel = new JLabel ("Your BMR is ");

      bmrResultLabel = new JLabel (" ");

      bmrMeaningLabel = new JLabel(" ");

      TDEELabel = new JLabel ("Your TDEE is ");

      tdeeResultLabel = new JLabel (" ");

      tdeeMeaningLabel = new JLabel(" ");

      height = new JTextField ();

      weight = new JTextField ();

      age = new JTextField ();

      calculate = new JButton ("Calculate");

      BMRListener Listener = new BMRListener();

      calculate.addActionListener(Listener);

      setPreferredSize (new Dimension(WIDTH, HEIGHT));

      setBackground (Color.white);



      add(heightLabel);

      add(height);

      add(weightLabel);

      add(weight);

      add(ageLabel);

      add(age);

      add(calculate);

      add(BMRLabel);

      add(bmrResultLabel);

      add(bmrMeaningLabel);

      add(TDEELabel);

      add(tdeeResultLabel);

      add(tdeeMeaningLabel);

   }
役に立ちましたか?

解決

Your not adding your buttons to the UI.

A ButtonGroup is a non visual helper class that manages a group of buttons and is used to ensure that only a single button is selected.

他のヒント

Add the group of RadioButtons using:

add(group2);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top