CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2EE / EJB / JMS

自定义MyJPanel为什么不起作用?

楼主21st_centry_fox(花不归)2005-01-02 18:00:10 在 Java / J2EE / EJB / JMS 提问

在一个工程中,自定义了一个MyJPanel类,其内容如下:  
  package   MyPanel;  
  import   java.awt.*;  
  在一个文件中定义了如下的类  
  import   javax.swing.JPanel;  
   
  public   class   MyPanel   extends   JPanel   {  
  public   void   MyPanel()   {  
  this.add(new   Label("Label   Inside"));  
  }  
  }  
  然后,在另一个Frame.java文件中,添加如下片断:  
  MyPanel   mp   =   new   MyPanel();  
  contentPane.add(mp,BorderLayout.SOUTH);  
  mp.add(new   Label("Label   Outside"));  
   
  奇怪的是,尽管可以看到Label   Outside,却怎么样也看不到Label   Inside  
  有哪位仁兄能解除我的这个疑惑嘛? 问题点数:50、回复次数:5Top

1 楼jackkui(键 之 舞 者)回复于 2005-01-03 11:10:35 得分 20

我做了如下的测试,完全可以  
  import   javax.swing.JPanel;  
  import   javax.swing.JLabel;  
  import   javax.swing.JFrame;  
  public   class   Test1   extends   JPanel{  
  public   Test1(){  
  this.add(new   JLabel("This   is   inside"));  
  }  
  public   static   void   main(String[]   args){  
  JFrame   frame   =   new   JFrame();  
  Test1   test   =   new   Test1();  
   
  frame.getContentPane().add(test);  
  test.add(new   JLabel("This   is   outside"));  
  frame.show();  
  }  
  };Top

2 楼vgvg(上帝在关闭一扇窗的同时,在别处打开了一扇门。可这扇门迟迟不开,我只好破门而入!)回复于 2005-01-03 11:17:06 得分 20

public   void   MyPanel()   {  
  this.add(new   Label("Label   Inside"));  
  }  
  去掉void,Top

3 楼21st_centry_fox(花不归)回复于 2005-01-03 16:25:12 得分 0

真的,去掉void就可以了,谁能告诉我为什么呢?!!!不明白呀!只是一个可有可无的返回值类型啊,这怎么会对结果有影响呢?!!  
  谢谢楼上的二位!!Top

4 楼vgvg(上帝在关闭一扇窗的同时,在别处打开了一扇门。可这扇门迟迟不开,我只好破门而入!)回复于 2005-01-03 16:29:15 得分 10

去掉以后他是一个构造方法当执行  
  MyPanel   mp   =   new   MyPanel();  
  就会执行this.add(new   Label("Label   Inside"));  
   
  不去掉时他是一个方法,需要调用才能执行.Top

5 楼21st_centry_fox(花不归)回复于 2005-01-03 16:47:54 得分 0

这真是一个隐蔽的陷阱啊  
  不小心还真的挺难发现的!  
  java设计这样也真算是一个缺陷啊,如果c+里这样做早编译器应该已经报错了吧。  
  谢谢楼上的大哥,结帐!Top

相关问题

  • 为什么不起作用
  • 自定义的事件(pbm_tvnclicked)怎么不起作用
  • 调用xsl中自定义的函数怎么不起作用?
  • 为什么On Error不起作用了
  • PFC:toolbar为什么不起作用?
  • set_unexpected()为什么不起作用?
  • setfocus()命令为什么不起作用?
  • 为什么jscript不起作用?
  • 为什么 Application->ProcessMessages() 不起作用了?
  • 我的taborder不起作用,为什么?

关键词

  • swing
  • mypanel
  • 去掉
  • jpanel
  • label
  • 如下
  • inside
  • jframe
  • jlabel
  • outside

得分解答快速导航

  • 帖主:21st_centry_fox
  • jackkui
  • vgvg
  • vgvg

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo