如何在运行时通过代码调整Libgdx桌面窗口大小

3

我有一个问题,就是如何在运行时通过代码调整窗口大小。

我尝试使用Gdx.graphics.setDisplayMode(); 但它会禁用窗口的可调整大小功能,而这对我的游戏来说是必须的。我试图从OpenGL中访问Display类,但没有成功,因为它在Gradle的核心部分中没有被引用。

有什么想法可以解决这个问题吗?


1
你说的“删除了调整窗口大小的能力”是什么意思?这是用户不再允许还是代码不再允许? 编辑:我刚刚自己测试了一下,Gdx.graphics.setDisplayMode(...); 对我来说运行得很好,我已经设置了 config.resizable = true ,并且可以多次调整窗口大小,并使用鼠标调整它。 - CoderMusgrove
当我调用setDisplayMode时,用户就不能再调整大小了...在那之前它运行得非常好。 - Wicpar
如果您能提供一些代码,说明您做了什么以及在哪里停止允许您调整窗口大小,这将有所帮助。这甚至可能是LibGDX针对您的操作系统的一个错误。此外,这是我在其中一个项目上进行的测试:http://pastebin.com/8NCkzgug - CoderMusgrove
我称之为:Gdx.graphics.setDisplayMode(Gdx.graphics.getDesktopDisplayMode().width - 50, Gdx.graphics.getDesktopDisplayMode().height - 50, false); 然后它就不能再被调整大小了... - Wicpar
我尝试了相同的代码,仍然可以手动调整大小。再次强调,在您的操作系统中可能存在LibGDX的错误(我运行Win7)。但是你可以通过编辑帖子并附上你的代码来确保它不是一个愚蠢的错误。 - CoderMusgrove
显示剩余5条评论
1个回答

2

我曾经遇到过完全相同的问题,后来我发现,与其直接调用Display.setDisplayMode(new DisplayMode(width, height)),我们应该使用Gdx.graphics.setWindowedMode(width, height)来改变窗口大小。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接