Linux上Java`DisplayMode`的位深度为`-1`
我有一段时间遇到了一个问题,我想知道如何解决它,但现在我想知道为什么我的解决方案有效。Linux上Java`DisplayMode`的位深度为`-1`,java,linux,graphics,Java,Linux,Graphics,我有一段时间遇到了一个问题,我想知道如何解决它,但现在我想知道为什么我的解决方案有效。GraphicsDevice.setDisplayMode()方法在我的Linux系统上总是抛出一个IllegalArgumentException,因此为了解决这个问题,我检查了GraphicsDevice.getDisplayModes()方法可用的每个DisplayMode。我注意到位深度(由.getBitDepth()方法返回)始终等于-1。当我将位深度参数更改为-1时,IllegalArgumentE
GraphicsDevice.setDisplayMode()
方法在我的Linux系统上总是抛出一个IllegalArgumentException
,因此为了解决这个问题,我检查了GraphicsDevice.getDisplayModes()方法可用的每个DisplayMode
。我注意到位深度(由.getBitDepth()
方法返回)始终等于-1
。当我将位深度参数更改为-1
时,IllegalArgumentException
已解决。但是那是什么意思呢?-1
在任何系统上都不可能有一点深度的-1
。这是否意味着我的系统不允许(Java)应用程序更改应用程序内部的颜色位深度
附言。
我为getBitDepth()运行Ubuntu12.04 LTS文档,上面写着:
返回显示的位深度,单位为位/像素。这可能是
位\深度\如果此显示器支持多个位深度
模式
如果你看一看,你会发现
Modifier and Type Constant Field Value
public static final int BIT_DEPTH_MULTI -1
所以-1
意味着支持多比特深度…啊,当然。奇怪的是,在我的Windows系统上,每个显示模式都有自己的深度。