我希望堆叠 JLayers
的实例彼此叠加以获得分层效果,但他们似乎不想那样工作。我想装饰一个JPanel
具有由多个 LayerUI<JPanel>
实现的多种效果类。
例如
frame.add(new JLayer<>(panel, new LayerUI<> ...));
frame.add(new JLayer<>(panel, new LayerUI<> ...));
new JLayer
的参数在哪里是一样的JPanel
实例但是 LayerUI
实例做不同的事情。
似乎最后一个添加的获胜。它们都直接绘制到 paint
中的上下文方法,也许就是这样..?
参见 here对于 Oracles 的教程
最佳答案
我不熟悉 JLayer,因为它是 Java 1.7 的新功能。
但是,您可以编写自己的包含 BufferedImage 和 z 级别的图层类。
您的绘制方法将遍历图层列表或图层映射,以 z 级别顺序将它们绘制在 JPanel 上。
关于java - 堆叠 JLayer 类(到 JPanel),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18002116/