the [xml]<control name=“imageSelect”/>[/xml] tag just work with one image. I’ve tested with both repetead and different images. If you wanna test it there is a imageSelect template in jMP, it causes error too. Here is the output error:
com.jme3.asset.AssetNotFoundException: Interface/Backgrounds/StartScreenBackground.png (Flipped)
at com.jme3.asset.DesktopAssetManager.loadAsset(DesktopAssetManager.java:268)
at com.jme3.asset.DesktopAssetManager.loadTexture(DesktopAssetManager.java:325)
at com.jme3.niftygui.RenderImageJme.(RenderImageJme.java:56)
at com.jme3.niftygui.RenderDeviceJme.createImage(RenderDeviceJme.java:116)
at de.lessvoid.nifty.render.NiftyImageManager.getImage(NiftyImageManager.java:32)
at de.lessvoid.nifty.render.NiftyRenderEngineImpl.createImage(NiftyRenderEngineImpl.java:174)
at de.lessvoid.nifty.controls.imageselect.ImageSelectControl.createImages(ImageSelectControl.java:287)
at de.lessvoid.nifty.controls.imageselect.ImageSelectControl.bind(ImageSelectControl.java:57)
at de.lessvoid.nifty.controls.NiftyInputControl.bindControl(NiftyInputControl.java:121)
at de.lessvoid.nifty.elements.Element.bindControls(Element.java:1761)
at de.lessvoid.nifty.elements.Element.bindControls(Element.java:1758)
at de.lessvoid.nifty.elements.Element.bindControls(Element.java:1758)
at de.lessvoid.nifty.screen.Screen.bindControls(Screen.java:810)
at de.lessvoid.nifty.screen.Screen.startScreen(Screen.java:204)
at de.lessvoid.nifty.Nifty.gotoScreenInternal(Nifty.java:614)
at de.lessvoid.nifty.Nifty.access$300(Nifty.java:73)
at de.lessvoid.nifty.Nifty$1.perform(Nifty.java:588)
at de.lessvoid.nifty.screen.Screen$EndScreenEndNotify.perform(Screen.java:654)
at de.lessvoid.nifty.screen.Screen$LocalEndNotify.perform(Screen.java:611)
at de.lessvoid.nifty.elements.Element$LocalEndNotify.perform(Element.java:1701)
at de.lessvoid.nifty.effects.EffectProcessor.checkFinish(EffectProcessor.java:314)
at de.lessvoid.nifty.effects.EffectProcessor.renderActive(EffectProcessor.java:84)
at de.lessvoid.nifty.effects.EffectProcessor.renderPre(EffectProcessor.java:57)
at de.lessvoid.nifty.effects.EffectManager$RenderPhasePre.render(EffectManager.java:318)
at de.lessvoid.nifty.effects.EffectManager.render(EffectManager.java:120)
at de.lessvoid.nifty.effects.EffectManager.renderPre(EffectManager.java:135)
at de.lessvoid.nifty.elements.Element.render(Element.java:583)
at de.lessvoid.nifty.screen.Screen.renderLayers(Screen.java:313)
at de.lessvoid.nifty.Nifty.render(Nifty.java:276)
at com.jme3.niftygui.NiftyJmeDisplay.postQueue(NiftyJmeDisplay.java:170)
at com.jme3.renderer.RenderManager.renderViewPort(RenderManager.java:1122)
at com.jme3.renderer.RenderManager.render(RenderManager.java:1174)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:266)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:149)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:185)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:223)
at java.lang.Thread.run(Thread.java:662)
Can you check if the asset is there?
I’m pretty sure the ImageSelect control works with multiple images since this one did work for me before:
[xml]<control id=“image-select” name=“imageSelect” width=“126px” imageWidth=“80px” imageHeight=“80px” imageList=“defaultcontrolsxml/avatar1.png,defaultcontrolsxml/avatar2.png,defaultcontrolsxml/avatar3.png” />[/xml]
Hmmmmm. When I posted this topic this wasn’t working both with the default images and my images. But I tested now and it’s working just with my images. Btw I took a look at the niftygui src folder and the test-data src folder and there aren’t any of the assets above there. jMP has a xml template for imageSelect and it doesn’t work. Cause the assest doesn’t exist.
P.S: Also, do you know a good way to render text labels vertically?