Hello all,
I’ve got a problem with the scrollPanel with Nifty.
I show you my code :
First, i create the popup which will contain the scrollPanel :
[java]
public void createTempScreen(Nifty nifty) {
final CommonBuilders builders = new CommonBuilders();
new PopupBuilder(“scrollPanelPopup”) {{
childLayoutCenter();
}}.registerPopup(nifty);
}
[/java]
Very simple, i juste create the poup and register it. I call this method in my simpleInitApp() of course.
After, in my screen controller, i have an other method to create the scrollpanel and the panel which will contain text.
[java]
public void showScrollPanel() {
ScrollPanelBuilder scrollBuilder = new ScrollPanelBuilder(“scrollpaneBuilderX2”);
scrollBuilder.width(“500px”);
scrollBuilder.height(“500px”);
Element scrollPanelElement = scrollBuilder.build(nifty, screen, tempScrollPanelPopUp);
Element childRoot2 = scrollPanelElement.findElementByName("#nifty-scrollpanel-child-root");
createPanel( nifty, screen, childRoot2);
childRoot2.layoutElements();
scrollPanelElement.getNiftyControl(ScrollPanel.class).setUp( 0, 20, 0, 20*10, AutoScroll.OFF );
nifty.showPopup(screen, tempScrollPanelPopUp.getId(), tempScrollPanelPopUp);
}
[/java]
And the createPanel method :
[java]
private Element createPanel( Nifty nifty, Screen screen, Element parent){
PanelBuilder panelBuilder = new PanelBuilder();
panelBuilder.x( “0px” );
panelBuilder.y( “0px” );
panelBuilder.width( 1500 + “px” );
panelBuilder.height( 1500 + “px” );
panelBuilder.alignLeft();
panelBuilder.valignTop();
panelBuilder.set( “childLayout”, “vertical” );
EffectBuilder effectBuilder = new EffectBuilder("gradient");
effectBuilder.effectValue("offset", "0%", "color", "#747474");
effectBuilder.effectValue("offset", "75%", "color", "#3B3B3B");
effectBuilder.effectValue("offset", "100%", "color", "#3C3C3C");
panelBuilder.onActiveEffect(effectBuilder);
Element panel = panelBuilder.build( nifty, screen, parent );
for (int i=0; i < 10; i++) {
TextBuilder textBuilder = new TextBuilder();
textBuilder.text("TEST TEXT BUILDER " + i);
textBuilder.width( 500 + "px" );
textBuilder.height( 50 + "px" );
textBuilder.font("Interface/Fonts/Default.fnt" );
textBuilder.textHAlignLeft();
textBuilder.build(nifty, screen, panel);
DropDownBuilder ddbuilder = new DropDownBuilder("");
ddbuilder.width("300px");
ddbuilder.height("50px");
ddbuilder.alignLeft();
ddbuilder.build(nifty, screen, panel);
}
return panel;
}
[/java]
Here is the result and my problem :
The text font is different from the default (isnt’t it?) and dropdown does not appear …
if someone can help me or have any suggestions please ?
Thank you in advance.