jframe.getContentPane().add(child)
。运行脚本后,没有看到menubar的出现。但是按钮位于顶部“y = 0”,如果理解的话。
后来我意识到我的错误,实际上必须在menubar中插入menu。然后menubar出现了。这让我想到...... "menubar" "contentpane"实际上是2个面板吗?这让我非常困惑。因为它的行为很像一个面板。但是getContentPane()
返回的是Container而不是JPanel对象,所以我很困惑。
如果是这样,那么直接放置在框架中的唯一东西就是Jpanel对象吗?因此,JButtons、JLabels不是直接放在框架中的......
这是否意味着jpanels是“嵌套”的?还有一件事让我感到困惑。如果jpanel可以控制位置,那么LayoutManager是做什么用的?谢谢,请像回答一个两岁小孩问天空为什么是蓝色一样简单易懂哈 ;)
JPanel
可以控制事物的位置,那么LayoutManager
的作用是什么呢?实际上,JPanel
无法直接控制事物的位置,这正是LayoutManager
所做的工作。 - Nate W.JRootPane
,这是用于JFrame
等轻量级容器的。 - trashgod