gpt4 book ai didi

java - 调用 PaintComponent 方法后,如何在 JPanel 中绘制内容

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

我是用 Java 制作 GUI 的新手。据我了解,有一个名为 Graphics 的类负责在 JPanel 中绘制形状。当我的应用程序启动时,我调用paintComponent 方法,该方法绘制我正在编程的游戏的棋盘,并且paintComponent 方法采用Graphics g 作为输入。但是,稍后我想更新棋盘,那么当用户执行诸如单击之类的操作时,如何告诉在游戏开始时绘制棋盘的同一个 g 绘制其他内容?

我相信这应该有一个非常简单的答案。

最佳答案

每个 JComponent(Swing 组件)都有一个 repaint() 方法,只需调用它来告诉 DrawingManager 重绘您的组件即可。

所有绘图代码都应该在 paintComponent 方法中,这意味着您不会在其他任何地方绘制任何内容(仅在 paintComponent 的调用流程中进行绘制,当然,您可以使用方法构建绘图代码)。

此方法需要访问指示应绘制内容和位置的状态。这是因为操作系统可以请求重新绘制,然后只调用 JComponent 中的绘制方法。

当您在 JComponent 上调用 repaint() 时,您请求的组件的 paintComponent() 方法会在短时间内调用重绘将由绘图线程调用,并且您应该只在该绘图线程中进行绘制。

关于java - 调用 PaintComponent 方法后,如何在 JPanel 中绘制内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35309661/

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