有谁能告诉我一下java的小问题吗?谢谢……

来源:百度知道 编辑:UC知道 时间:2024/07/03 23:58:31
add(panel)与getContentPane().add(panel)有什么不同?为什么没getContentPane()能编译成功,但是没法执行?
能否再详细点?是不是jdk1.4之前的就可以执行成功?

好像我说错了。JFrame是swing中的组件,继承了Frame。Frame中是没有这个getContentPanel的。但是swing中的顶层组件(top-level containers)均有一个JRootPanel,也就是getContentPanel得到的Panel,而一切放在JFrame中的Panel均必须放在getContentPanel()得到的这个Panel中,因为JFrame在显示的时候只关心装在这个getContentPanel()中的东西,而忽略其它直接调用JFrame的add加进来的东西。 这个rootPanel是JFrame唯一的child。如果使用Frame的话,则是直接add的。不知道我说清楚了没有。