Java 图形用户界面 : about getContentPane( ) method and content

标签 java swing jframe

在这段代码中:

JLabel emptyLabel = new JLabel("");
emptyLabel.setPreferredSize(new Dimension(175, 100));
frame.getContentPane().add(emptyLabel, BorderLayout.CENTER);

我可以看到它创建了一个新标签并将其添加到 JFrame 对象 frame 中。 但我想了解 getContentPane() 做了什么,为什么需要它?

我读了this API但我还是不明白。

最佳答案

每个 Swing 顶级容器(和 JInternalFrame)都有所谓的 JRootPane。它负责实际管理窗口的整体布局。

enter image description here

根 Pane 有许多层,其中一层是内容 Pane 。当您向框架添加内容时(我认为是从 Java 5 开始),它会自动为您添加到内容 Pane 中,在此之前,您必须调用 getContentPane().add(...)你自己

看看How to use RootPanes

关于Java 图形用户界面 : about getContentPane( ) method and content,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16744152/

相关文章:

java - 使用 super 或只是 setTitle 调用父类(super class)构造函数?

Java TableModel 重复行 - 如何阻止这种情况发生?

Java Swing Multiinput 第二行的第二个 JTextField

java - 在用户按下 [x] 后窗口关闭之前做一些事情

java - 在Java中将字符串中的更多空白空间折叠成单个空白空间?

java - 如何使用 Spring 连接模型 View 和 Controller

java - 未修饰的 JFrame 阴影

java - 查找具有唯一 K 个字符的最长子字符串的代码不适用于所有输入

java - 诡异的 ?? en_US??出现在选项标签中

java - 计算 Stream 的元素