日期:2014-05-20  浏览次数:20676 次

请高手赐教一个JDialog问题,很郁闷啊!
下面代码有误吗?为什么无法出现“对话框”,望各位高手不吝赐教!!在此先谢了!!!
JDialog   fontDialog=new   JDialog(frm, "字体 ",true);

JButton   okbtn=null,cancelbtn=null;
DefaultListModel   fontListModel=null,sizeListModel=null,styleListModel=null;
JTextField   fonttxt=null,sizetxt=null,styletxt=null;
JList   fontlist=null,sizelist=null,stylelist=null;

fontListModel=new   DefaultListModel();
sizeListModel=new   DefaultListModel();
styleListModel=new   DefaultListModel();


fontListModel.addElement( "宋体 ");
fontListModel.addElement( "楷体 ");
fontListModel.addElement( "隶书 ");
fontListModel.addElement( "华文行楷 ");
fontlist=new   JList(fontListModel);

sizeListModel.addElement( "10 ");
sizeListModel.addElement( "12 ");
sizeListModel.addElement( "14 ");
sizeListModel.addElement( "16 ");
sizelist=new   JList(sizeListModel);

styleListModel.addElement( "斜体 ");
styleListModel.addElement( "粗体 ");
styleListModel.addElement( "下划线 ");
stylelist=new   JList(styleListModel);


fonttxt=new   JTextField(10);
styletxt=new   JTextField(6);
sizetxt=new   JTextField(6);

JScrollPane   fontjsp=null,sizejsp=null,stylejsp=null;
fontjsp=new   JScrollPane(fontlist);
sizejsp=new   JScrollPane(sizelist);
stylejsp=new   JScrollPane(stylelist);

JPanel   btnp=null,fontp=null,sizep=null,stylep=null;

fontp=new   JPanel();
fontp.add(fonttxt,BorderLayout.NORTH);
fontp.add(fontjsp,BorderLayout.CENTER);
fontp.setBorder(BorderFactory.createTitledBorder( "字体 "));

sizep=new   JPanel();
sizep.add(sizetxt,BorderLayout.NORTH);
sizep.add(sizejsp,BorderLayout.CENTER);
sizep.setBorder(BorderFactory.createTitledBorder( "大小 "));

stylep=new   JPanel();
stylep.add(styletxt,BorderLayout.NORTH);
stylep.add(stylejsp,BorderLayout.CENTER);
stylep.setBorder(BorderFactory.createTitledBorder( "样式 "));

okbtn=new   JButton( "确定 ");
cancelbtn=new   JButton( "取消 ");
btnp.add(okbtn);
btnp.add(cancelbtn);

Container   cp=fontDialog.getContentPane();
fontDialog.setSize(200,100);
cp.setLayout(new   GridLayout(2,3));
cp.add(fontp);
cp.add(sizep);
cp.add(stylep);
cp.add(btnp);
fontDialog.setVisible(true);
fontDialog.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

------解决方案--------------------
应该能出现的,是不是那个btnp没有=new JPanel(),造成nullPointerException的缘故啊