【发布时间】:2013-11-12 08:53:54
【问题描述】:
好的,我找到了很多关于如何获得当前显示器分辨率的信息,但我想更改它。因此,每次运行我的游戏时,它总是以相同的分辨率运行。 我该怎么做呢?
* 好的,所以我已经不再尝试强制某个分辨率,而是更多地基于宽度和高度变量来绘制事物。
但效果不太好,
例如,我试图让这个项目图标显示在库存中。
g.drawImage(broadsword, width - (width / 8 -2), height / 2 - 9, null);
现在,当我在我的原生分辨率 1920x1080 中运行游戏时,它完全适合插槽。但是如果我改为 sat 1280x720,它就会被画得太靠右了。
想通了,我没有让它根据用户的分辨率显示整个用户界面,而是让它根据开始绘制库存的 0、0 位置创建基线 x 和 y 变量。
g.drawImage(inventory, width - 499, height / 2 - 20, null);
int ixt = width - 499;
int iyt = height / 2 - 20;
g.drawImage(broadsword, ixt + 10, iyt + 10, null);
似乎可以完美适应任何分辨率。
【问题讨论】:
-
您有一台可以真正改变分辨率的旧 CRT 显示器吗?现在发达国家的大多数人都没有这样的显示器,我想......
-
哇!提醒我永远不要购买你的软件!我绝不希望我的整个桌面更改为不同的分辨率,仅仅因为一个应用程序的开发者认为这是一个好主意。
-
重点是我正在尝试找到一种解决方法,这样我就不必重写显示代码来处理每个可能的用户分辨率。
-
好的,但是如果用户调整窗口大小会发生什么?您必须以不同的尺寸显示您的游戏,或者只显示部分显示。既然您无论如何都必须这样做,那么处理不同的屏幕分辨率有何不同?
-
还有其他 Stack Overflow 用户可能会从您的问题中受益。看在他们的份上,您能否将您的问题恢复原状,并在一个实际的新问题中提出您的新问题?
标签: java