2014-01-10 3 views
0

Что я делаю неправильно? Я пытаюсь добавить группу checkbox в jpanel1. Но я действительно не понимаю, почему это не работает?
p.s. GUI создается NetBeans matisse, затем я вручную редактирую код внутри нового класса. Благодаряcheckboxgroup не отображается на панели

CheckboxGroup cbGroup = new CheckboxGroup(); 
    Checkbox importBox = new Checkbox("aaa", cbGroup, true); 
    Checkbox specialBox = new Checkbox("bbb", cbGroup, false); 


@SuppressWarnings("unchecked") 
// <editor-fold defaultstate="collapsed" desc="Generated Code">       
private void initComponents() { 

    jPanel1 = new javax.swing.JPanel(); 

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); 

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); 

    jPanel1.setLayout(new FlowLayout()); 
    jPanel1.add(importBox); 
    jPanel1.add(specialBox); 

    jPanel1Layout.setHorizontalGroup(
     jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
     .addGap(0, 210, Short.MAX_VALUE) 
    ); 
    jPanel1Layout.setVerticalGroup(
     jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
     .addGap(0, 100, Short.MAX_VALUE) 
    ); 
+3

Где вы на самом деле добавить jPanel1 в JFrame? И есть ли причина, по которой вы смешиваете awt и Swing вместо того, чтобы просто использовать JCheckBoxes? –

+0

Чтобы лучше помочь, отправьте сообщение [MCVE] (http://stackoverflow.com/help/mcve). Не используйте Swing с AWT без уважительной причины. Здесь вы должны использовать 'JCheckBox' и [' ButtonGroup'] (http://docs.oracle.com/javase/7/docs/api/javax/swing/ButtonGroup.html). –

+0

@AndrewThompson MCVE ??? У SSCCE возникли проблемы с законом или чем-то еще? – splungebob

ответ

2

Вы добавляете JCheckBox (ы) в контейнер; может быть, как этот

public static void main(String args[]) { 
    SwingUtilities.invokeLater(new Runnable() { 
     @Override 
     public void run() { 
      JFrame frame = new JFrame(); 
      ButtonGroup bg = new ButtonGroup(); 
      JCheckBox importBox = new JCheckBox("aaa", true); 
      JCheckBox specialBox = new JCheckBox("bbb", false); 
      bg.add(importBox); 
      bg.add(specialBox); 
      JPanel panel = new JPanel(); 
      panel.add(importBox); 
      panel.add(specialBox); 
      frame.add(panel); 
      frame.pack(); 
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      frame.setVisible(true); 
     } 
    }); 
} 

который выглядит

Using JCheckBox(s)

+2

[Начальные темы] (http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html) – MadProgrammer

Смежные вопросы