gpt4 book ai didi

java - JPanel 内容 Pane 困惑

转载 作者:搜寻专家 更新时间:2023-10-31 08:18:00 26 4
gpt4 key购买 nike

我正在学习 Java Swing,我在框架上附加了一个 menuBar。默认情况下,这应该调用 jframe.getContentPane().add(child)。当我运行脚本时,menuBar 没有出现。但如果有意义的话,按钮位于最顶部“y=0”。

然后我意识到我的错误,我实际上必须在菜单栏中放入一个菜单。然后 menuBar 出现了。所以这让我开始思考......“菜单栏”“内容 Pane ”实际上是 2 个面板吗?这让我很困惑。因为这很像一个面板。但是 getContentPane() 返回一个 Container,而不是 JPanel 对象,所以我很困惑。

如果是这样,是否意味着直接转储到框架中的只是 Jpanel 对象?因此 JButtons,JLabels 不直接在框架中......这是否意味着 jpanels 是“嵌套的”?还有一件事让我感到困惑。如果 jpanel 可以控制事物的定位方式,那么 LayoutManager 有什么用? :S谢谢,请像回答 2 岁 child 问为什么天空是蓝色的那样回答,哈 ;)

最佳答案

一些随机的想法:

  • 是的,JPanel 和其他组件通常是“嵌套的”。这就是对 Swing/AWT 布局管理器有深入了解的必要条件。
  • 虽然 JFrame 的 getContentPane() 返回的类型在技术上是一个 Container,但它也是一个 JPanel(最终继承自 Container)。
  • 我相信您可以使任何派生自 Container 的内容成为 contentPane,但您需要注意它是不透明的。

关于java - JPanel 内容 Pane 困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7758975/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com