我使用Graphics2D和Canvas类在java中创建游戏。Java游戏不会在第二台显示器上呈现
当我运行程序时,JFrame出现在我的第一台显示器上,没有问题。然而,当我拖动JFrame的到我的第二个监视器它会变成灰色,并且将停止渲染什么,然后当我拖回来到我的第一个监控程序继续呈现..
我的游戏循环调用draw()
方法在我Screen
类延伸Canvas
,这是绘制方法。
public void draw(){
BufferStrategy bs = getBufferStrategy();
if(bs == null){
createBufferStrategy(2);
bs = getBufferStrategy();
g = (Graphics2D) bs.getDrawGraphics();
}
g.setColor(Color.BLACK);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(Color.WHITE);
g.drawString("Hello, this works", 300, 300);
g.drawImage(ImageLoader.test[0][0], 100, 100, null);
bs.show();
}
http://stackoverflow.com/questions/4627553/show-jframe-in-a-specific-screen-in-dual-monitor-configuration,希望这有助于:) –
不,这没有帮助。这个代码将JFrame放到了我的另一个屏幕上,但是如果我在屏幕上拖动它,它会再次中断。我希望能够在监视器之间拖动我的Jframe而不会中断它。 –
如果你把这种类型的脚本放入循环或事件中,我相信它会起作用 –