Chinaunix

标题: 探讨一下:这个方法是属于谁的?相信大家也遇过这样的疑问 [打印本页]

作者: shining3g    时间: 2006-02-27 16:49
标题: 探讨一下:这个方法是属于谁的?相信大家也遇过这样的疑问
大家看一下以下程序片断
class RadioButtonFrame extends JFrame
{  
   public RadioButtonFrame()
   {  
      
     ................

      buttonPanel = new JPanel();
      group = new ButtonGroup();

      addRadioButton("Small", 8);
      addRadioButton("Medium", 12);
      addRadioButton("Large", 18);
      addRadioButton("Extra large", 36);

      contentPane.add(buttonPanel, BorderLayout.SOUTH);
   }
}
这里面的addRadioButton是属于RadioButtonFrame的对象还是属于buttonPanel的。
我觉得应该是属于buttonPanel的,因为这段程序应该是将几个单选按钮放在一个面板上,然后再用contentPane来布局的,如果不是的话这一句contentPane.add(buttonPanel,BorderLayout.SOUTH);也没有意义啦?
想了很久,请教一下大家

[ 本帖最后由 perryhg 于 2006-2-27 18:36 编辑 ]
作者: 白色乌鸦    时间: 2006-02-27 17:33
能编译过去??
作者: 艾斯尼勒    时间: 2006-02-27 17:54
class RadioButtonFrame extends JFrame
{  
   public RadioButtonFrame()
   {  
      
     ................

      buttonPanel = new JPanel();
      group = new ButtonGroup();

      this.addRadioButton("Small", ;
      this.addRadioButton("Medium", 12);
      this.addRadioButton("Large", 1;
      this.addRadioButton("Extra large", 36);

      contentPane.add(buttonPanel, BorderLayout.SOUTH);
   }
}


这玩意儿不能想当然,您在好好看看哪儿用了buttonPanel的引用过?
这代码我怀疑是写的人也想写在buttonPanel上面,可他忘了引用buttonPanel结果直接就放到RaidoButtonFrame的this上面了所以运行是不是只有一个大大的RadioButton占了整个frame的中上部分
作者: kakasi    时间: 2006-02-27 17:55
buttonPanel = new JPanel();
      group = new ButtonGroup();

      addRadioButton("Small", ;

----
实例的方法调用该怎么写? 这样还能说是buttonPanel的方法???

这个方法也不是jdk中的,应该是RadioButtonFrame的一个自定义方法,并且是这样实现的:

private addRadioButton(AbstractButton b)

  this.group.add(b)


group 是RadioButtonFrame的field




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2