5

我想为我在 Windows 7 上运行的 lwjgl 进程添加一个任务栏图标。

Display.setIcon 成功更改了窗口左上角的图标,但没有更改任务栏中的图标。

做什么?

我的代码,例如:

ArrayList<ByteBuffer> byteBuffers = new ArrayList<ByteBuffer>();
byteBuffers.add( ImageHelper.loadImageAsIconImage("stickmanicon32x32.png") );
byteBuffers.add( ImageHelper.loadImageAsIconImage("stickmanicon16x16.png") );
System.out.println( "taskbaricon result: " + Display.setIcon(byteBuffers.toArray(new ByteBuffer[]{})) );

我也尝试添加 40x40 图像,但没有任何变化。

4

3 回答 3

5

这段代码对我来说很好。不需要额外的库。

ByteBuffer[] list = new ByteBuffer[2];
list[0] = createBuffer(ImageIO.read(new File("src/Images/Tests/icon16.png")));
list[1] = createBuffer(ImageIO.read(new File("src/Images/Tests/icon32.png")));
Display.setIcon(list);
于 2012-09-08T18:22:51.213 回答
2

这是我在几个小时后搞砸后发现的。

我使用了 slick-util 库。

Display.setIcon(new ByteBuffer[] {
                    new ImageIOImageData().imageToByteBuffer(ImageIO.read(new File("res/game/gameIcon.png")), false, false, null),
                    new ImageIOImageData().imageToByteBuffer(ImageIO.read(new File("res/game/gameIcon.png")), false, false, null)
                    });
于 2013-11-03T03:04:02.153 回答
2

您应该看看J7Goodies,这是一个提供许多 Windows 7 功能的 Java 库。

于 2011-05-31T21:08:28.870 回答