8得票3回答
Java透明渲染错误

我正在开发一款类似信息亭的Java程序,用于显示天气、时间、预报等内容。以下是程序截图(截图中的时间未更新): 各个部分都是用JPanels创建的,并覆盖了paintComponent()方法。他们绘制了一个渐变的标题和半透明的背景。但是,当我更改其中一个面板的内容时,先前的内容没有被删除,...

7得票2回答
Java游戏2D中使用Swing实现重叠阴影

我正在使用Swing作为我的主要绘图组件开发一个2D Java游戏。每个物体都有一个阴影(BufferedImage),但是每个阴影都会重叠其他阴影。是否可能只让阴影不彼此重叠?因为如果物体在玩家下面,我仍然希望阴影绘制在玩家上方,而如果物体在玩家上面,则不需要绘制在玩家上方。这里有一张图片以...

7得票1回答
在BufferedImage上绘制具有不透明度的圆角矩形

我一直在尝试为我正在开发的小游戏实现基本的文字气泡。我开始时并不想太花哨,只用一个带有边框的基本圆角矩形来包含一些文本: 然后,我决定文本气泡在预设时间后应该淡出。这就是我遇到问题的地方:当我尝试在测试窗口中显示气泡时,一切都正常工作,但当我在游戏中显示它们时,当气泡淡出时会出现扭曲。我进...

7得票1回答
在Swing应用程序中,游戏循环应该放在哪里?

我正在尝试使用Java制作一个简单的2D游戏。 据我所知,我的游戏应该由两个线程组成:"事件分派线程"(用于GUI操作)和"游戏线程"(用于游戏循环)。 我创建了一个概述,但无法找到游戏循环的位置。 简而言之,我正在尝试创建一个游戏循环而不会冻结我的UI线程。 如果您能提供关于我做错事情的任何...

7得票3回答
为什么Swing会重复绘制简单组件?

这是一个简单的绘制椭圆形的示例。 public class SwingPainter extends JFrame{ public SwingPainter() { super("Swing Painter"); setDefaultCloseOper...

7得票2回答
为什么在paintComponent()中使用GIF动画不会播放?

我正在使用paintComponent()方法将一个gif动画图像绘制在JPanel的背景上。 它显示出来了gif图片,但是没有动画效果。 我正在使用java 1.5版本,我知道可以使用带有图标的标签。 有人知道为什么以及如何解决这个问题吗? private static clas...

7得票3回答
在Java中创建一个简单的自定义JComponent?

我想在工作项目中开始构建自己定制的JComponent。下面是一个简单的示例,它应该只在屏幕上创建一个球。(我在网上找到了大部分代码),但它提供了一个不错的起点。我的问题是为什么这段代码没有在表单中显示球?我做错了什么? 另外,对于自定义JComponent,应该提供哪些基本方法? 代码:...

7得票2回答
Java JPanel getGraphics()

由于Java仅支持单一继承,我希望能够直接在类Panel的成员JPanel实例上进行绘制。我从该成员中获取一个Graphics实例,然后在其上绘制我想要的内容。 如何在不继承JComponent或JPanel的情况下,利用getGraphics()在this上绘制,而无需覆盖public v...

7得票1回答
向 JPanel 添加背景图片

我正在使用Java构建一个桌游。 对于游戏板本身,我尝试将该板的图像放置为整个JPanel的背景,该JPanel填充了JFrame。 我找到了一种方法来实现这一点,但是只能使用存储在本地的文件,它需要能够从GUI所在的包中获取该图像。 package Gui; import java.aw...