【问题标题】:Use method repaint() with JLayeredPane?将方法 repaint() 与 JLayeredPane 一起使用?
【发布时间】:2015-09-11 19:06:05
【问题描述】:

我编写了简单的应用程序,但我遇到了 repaint() 的问题。我有一个 JLayeredPane 用于放置组件。 我想让按钮重置,当他被点击时将 JLayeredPane 设置为默认外观。

layeredPane.removeAll();
ayeredPane.revalidate();
layeredPane.repaint();

但是当点击按钮时,JLayeredPane 并没有重置为默认值。`

有人可以帮我怎么做吗?

【问题讨论】:

    标签: java swing repaint jlayeredpane


    【解决方案1】:

    阅读 How to Use Layered Panes 上的 Swing 教程部分。下载演示代码。它将向您展示如何正确构建程序。

    对代码进行以下更改:

    if (ON_TOP_COMMAND.equals(cmd)) {
        layeredPane.removeAll();
        layeredPane.repaint();
    
    1. 运行程序以证明它显示了分层窗格。

    2. 点击“图层顶部位置”复选框,图层将消失。

    所以您已经证明代码应该可以工作。如果它对您不起作用,那么您可能没有对分层窗格的有效引用。

    如果您需要更多帮助,请发布正确的 SSCCE 来演示问题,因为我们无法根据提供的代码提供帮助,因为它应该可以工作,问题出在您程序的其他地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-22
      • 1970-01-01
      • 1970-01-01
      • 2010-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多