Java 当用户赢得游戏时,如何使新屏幕弹出?

Java 当用户赢得游戏时,如何使新屏幕弹出?,java,swing,Java,Swing,我的游戏是有3个目标和一个球。用户将输入一个度数来移动球,使其击中其中一个目标。我所希望的是,如果用户点击了其中一个目标,就会出现一个新的屏幕弹出窗口,说“你赢了!” 这是我将绘制的屏幕类(还有3个其他类未显示): import javax.swing.JPanel; 导入java.awt.Graphics; 导入java.awt.Color; 导入java.awt.Dimension; 导入java.awt.image.buffereImage; 公共类屏幕扩展JPanel { 专用缓冲图像缓

我的游戏是有3个目标和一个球。用户将输入一个度数来移动球,使其击中其中一个目标。我所希望的是,如果用户点击了其中一个目标,就会出现一个新的屏幕弹出窗口,说“你赢了!”

这是我将绘制的屏幕类(还有3个其他类未显示):

import javax.swing.JPanel;
导入java.awt.Graphics;
导入java.awt.Color;
导入java.awt.Dimension;
导入java.awt.image.buffereImage;
公共类屏幕扩展JPanel
{
专用缓冲图像缓冲;
私人舞会b1;
私有目标t1;
私有目标t2;
私人目标t3;
公共屏幕()
{
b1=新球(130340);
t1=新目标(300120);
t2=新目标(600300);
t3=新目标(400400);
}
公共维度getPreferredSize()
{
//设置面板的大小
返回新维度(800600);
}
公共组件(图形g)
{
超级组件(g);
颜色粗糙度=新颜色(0130,33);
绿色=新颜色(107204,4);
//创建缓冲区
if(缓冲==null)
{
buffered=(buffereImage)(createImage(getWidth(),getHeight());
}
//创建临时图形缓冲区以进行绘制
Graphics gBuff=buffered.createGraphics();
//清除一切
//这将绘制白色框
gBuff.setColor(粗糙);
gBuff.fillRect(0,080060);
gBuff.setColor(绿色);
gBuff.Fillova(20,20650560);
gBuff.Fillova(240,50530540);
b1.图纸(gBuff);
t1.牵引力(gBuff);
t2.牵引力(gBuff);
t3.图纸(gBuff);
//绘制缓冲图像
g、 drawImage(缓冲,0,0,null);
}
公共void setVariables(int degreeInput)
{
b1.设置度(输入度);
}
public void animate()
{
整数计数=0;
而(计数<100000)
{
//等待0.01秒
试一试{
睡眠(10);
}捕获(中断异常例外){
Thread.currentThread().interrupt();
}
b1.移动();
if(t1.checkCollision(b1.getX(),b1.getY(),b1.getWidth(),b1.getHeight())
{
打破
}
if(t2.checkCollision(b1.getX(),b1.getY(),b1.getWidth(),b1.getHeight())
{
打破
}
if(t3.checkCollision(b1.getX(),b1.getY(),b1.getWidth(),b1.getHeight())
{
打破
}
计数++;
重新油漆();
}
}
}

因为我是一个初学者,如果答案可以用简单的话,那就太好了

您的意思是想要某种类型的弹出窗口吗?比如:

JOptionPane.showMessageDialog(frame, "You Win!", "Winner winner chicken dinner", JOptionPane.PLAIN_MESSAGE);

问题出在哪里?到目前为止你尝试了什么?没有问题,我只是不知道如何在不同的图形窗口中创建新窗口是这样的
JOptionPane.showMessageDialog(frame, "You Win!", "Winner winner chicken dinner", JOptionPane.PLAIN_MESSAGE);