gpt4 book ai didi

java - 当我添加绘画方法时,JFrame 窗口变黑

转载 作者:行者123 更新时间:2023-12-02 02:10:13 25 4
gpt4 key购买 nike

所以当我尝试创建一个绘制方法时,即

public void paint(Graphics g) {
Graphics2D g2 = (Graphics2D) g;
}

当我运行程序时,我的 JFrame 窗口将完全变黑。如果我从代码中删除paint方法,我的正常图像将出现在我的JFrame窗口中。我确信我没有在代码中的其他任何地方使用 .paint() 方法,因为我现在刚刚将此方法添加到我的代码中。有谁知道为什么会发生这种情况吗?

更新,我使用的是eclipse

最佳答案

首先查看 Performing Custom PaintingPainting in AWT and Swing更好地理解 Swing 中绘画的工作原理。

基本上,当绘制子系统决定需要更新组件时,它会根据需要调用您的 paint 方法。

因为你已经重写了它,基本上什么也不做,所以什么也没有绘制。

作为一般性建议,您应该避免重写顶级容器(例如 JFrame)的 paint,因为它们实际上是复合组件。也就是说,它们实际上是由一系列 UI 构建于其上的层组成

参见How to use root panes了解更多详细信息,但基本上...

All the layers

关于java - 当我添加绘画方法时,JFrame 窗口变黑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50126165/

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