【问题标题】:what's the use of a frame , a pane or a panel in swing?框架、窗格或摇摆面板有什么用?
【发布时间】:2010-12-18 18:53:59
【问题描述】:

我读到 JFrame 是由几个窗格组成的。什么是窗格,为什么 Jframe 是由窗格组成的? 为什么有一个 JPanel 而 JFrame 看起来与 JPanel 完全一样,但是有一个菜单栏和一个关闭按钮,那么 JPanel 需要什么?谁能给我解释清楚这三个组件的定义和使用?

【问题讨论】:

    标签: java swing


    【解决方案1】:

    有 JFrame 等顶级容器。这些可以用作构建 GUI 的主窗口。

    然后是中级容器。这些必须放在其他容器中,它们不能单独存在。它们要么帮助您组织组件,要么添加功能。 JPanel 是一个非常简单的容器,可以帮助您组织其他组件。而 JSplitPane 添加了具有两个可变大小窗格的功能。

    当您有一个复杂的 GUI 时,您可能希望使用 JPanel 来组织您的 GUI 的各个区域,然后将每个面板添加到您的 JFrame。

    在 Java 中,Swing API 使用Composite Design Pattern。这意味着您可以从其他对象组合非常复杂的对象,并且仍然以与简单对象相同的方式处理组合对象。因此,您可以将 JPanel 放入 JPanel 中,它的行为仍然像 JPanel。

    把它想象成一个钓具箱(或针线包)。它由一个大容器制成。但是,与其将许多小物件放入这个大容器中并使其以后难以管理,不如在大盒子内放置一些较小的隔间。然后钩子和坠子等进入隔间。它更容易管理。大盒子是 JFrame,隔间是 JPanel。

    【讨论】:

    • 我明白了……但我还有另一个问题。在我的书中有一个 JFrame 的图形说它由几个窗格组成:根窗格、分层窗格、内容窗格和玻璃窗格所有这些都需要什么?并且是面板 == 面板吗??!
    • 框架是极其复杂的对象,需要满足大量的情况。他们应该在许多不同的平台上表现相似。为了实现这一点,有必要将各种事物的职责分解为它们自己的组件。此页面:download.oracle.com/javase/7/docs/api/javax/swing/… 我帮助您了解您提到的某些窗格的用途。
    猜你喜欢
    • 2012-11-20
    • 2013-04-29
    • 1970-01-01
    • 2012-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多