gpt4 book ai didi

java - 尝试用 JPanel 绘制一个简单的矩形,但没有显示任何内容

转载 作者:行者123 更新时间:2023-11-30 03:20:14 25 4
gpt4 key购买 nike

我目前正在阅读《Head First Java》一书。这本书太棒了,我真的很喜欢读它。但我突然停了下来。这本书讲述了使用 swing 库进行 GUI 编程,结果比我想象的要容易。在本章的 GUI 部分之后,本书介绍了使用 awt 库和图形对象绘制图形。这就是我被困住的地方。以下是我的代码,它编译得很好,但似乎不想渲染矩形。

import java.awt.*;
import javax.swing.*;

public class DrawTest
{
JFrame frame;

public static void main(String[] args)
{
DrawTest test = new DrawTest();
test.go();
}

public void go()
{
frame = new JFrame();

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 800);
frame.setVisible(true);
frame.setResizable(false);
}
}

class DrawPanel extends JPanel
{
public void paintComponent(Graphics g)
{
g.setColor(Color.green);
g.drawRect(70, 70, 200, 200);
}
}

我做错了什么?这很可能非常明显,但我没有看到。我非常感谢一个彻底的答案,我是 Java 新手,所以我想完全理解。

提前致谢!

最佳答案

您需要实例化一个 DrawPanel 并将其添加到 DrawTest 中的 frame 中。首先包含 DrawPanel 的构造函数,然后在 go() 方法中添加以下几行:

DrawPanel panel = new DrawPanel();
frame.add(panel);

关于java - 尝试用 JPanel 绘制一个简单的矩形,但没有显示任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31492049/

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