2013-11-01 51 views
-2

我一直在试图绘制Applet的图形。并在JPanel.visible(true)时将其绘制到我的JPanel上;我试图使用图像我= Applet.createImage(宽度,高度);我试图使用图像我= Applet.createImage(宽度,高度);我试图使用图像我= Applet.createImage(宽度,高度)。然后用g.drawImage(i,0,0,this)将图像绘制到我的JPanel;在Applet.setVisible(false)上绘制Applet图形到JPanel

当JPanel.paintComponent(Graphics g)...被调用时,所有剩下的是一个空白的JPanel。

是否有这更好的方法呢?

+0

如果小程序使用了BufferedImage,为什么不将它传递给JPanel?你试图达到什么样的总体效果?请告诉我们更多关于你的问题的重要细节。 –

+0

为了更快提供更好的帮助,请发布[SSCCE](http://sscce.org/)。 –

回答

3

如果我没有弄错,Applet当它的可见度设置为false时不会绘制,这就解释了为什么您的JPanel会变为空白。你是否有必要隐藏Applet?一个典型的解决方案是直接通过调用添加AppletJPanel

myJPanel.add(myApplet); 

当然,这个混合Swing和AWT组件,其中一些人会反对,但它仍然有效。但请注意,Applet的单个实例不能一次被抽取到两个地方,因此您无法将Applet同时添加到JPanel和另一个地方。

+0

重点是几乎模仿“玻璃板”的效果,以便我可以查看小程序,但不发送/接收鼠标/键盘输入。我希望能够从applet图形创建图像并将图像绘制到我的JPanel中,但也许这是不可能的。谢谢回复。 –

+0

@TonyDepace:你为什么不告诉我们这个以及其他细节?为此使用玻璃窗格有什么问题?再次,为了获得更好的答案,请提供更多关于问题的详细信息。 –

+0

@TonyDepace你是Applet的作者吗?您可以在Applet中添加一个标志,以便在处于冻结状态时忽略输入。 –