java.lang.NullPointerException at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:1129)
Peter Penzov
peter.penzov at gmail.com
Tue Jul 23 03:37:51 PDT 2013
Hi,
I'm working on JavaFX example which uses Toggle button:
private void initMainStage(final Stage mainStage)
{
// Set Main Window Label
// Set Icon of the main stage
Image img = new
Image(getClass().getResource("/com/dx57dc/images/internet-icon.png").toExternalForm());
mainStage.getIcons().add(img);
// Main Stage
root = new BorderPane();
final VBox vbox = new VBox();
// Set Style
String pillButtonCss =
DX57DC.class.getResource("/com/dx57dc/css/PillButton.css").toExternalForm();
// Create 3 toggle buttons and a toogle group for them
ToggleButton tb1 = new ToggleButton("Infrastructure");
tb1.setId("pill-left");
ToggleButton tb2 = new ToggleButton("Agents");
tb2.setId("pill-center");
ToggleButton tb3 = new ToggleButton("Live Performance");
tb3.setId("pill-right");
final ToggleGroup group = new ToggleGroup();
tb1.setToggleGroup(group);
tb2.setToggleGroup(group);
tb3.setToggleGroup(group);
// Select the first button by default
group.selectToggle(tb1);
// Some test data
final Rectangle rect2 = new Rectangle(300, 300);
rect2.setFill(Color.SILVER);
final Rectangle rect3 = new Rectangle(300, 300);
rect3.setFill(Color.DODGERBLUE);
tb1.setUserData(root);
tb2.setUserData(rect2);
tb3.setUserData(rect3);
final HBox hBox = new HBox();
// Listener which changes toggle buttons content
group.selectedToggleProperty().addListener(new
ChangeListener<Toggle>()
{
@Override
public void changed(ObservableValue<? extends Toggle> ov,
Toggle toggle, Toggle new_toggle)
{
if (new_toggle == null)
{
}
else
{
vbox.getChildren().set(2, (Node)
group.getSelectedToggle().getUserData());
}
}
});
hBox.getChildren().addAll(tb1, tb2, tb3);
hBox.setPadding(new Insets(5, 5, 5, 5)); // Padding between the
main menu and the content
hBox.getStylesheets().add(pillButtonCss); // Add the css style
// Content of the main stage
leftHBox = getLeftHBox(mainStage, root);
rightHBox = getRightHBox(mainStage);
footerVBox = getFooter(mainStage);
centerPane = getCenterPane(mainStage);
// default resizer with drag insets(5,5,5,5);
//RegionResizerFX.register(leftHBox, rightHBox, footerVBox,
centerPane);
root.setRight(rightHBox);
root.setBottom(footerVBox);
root.setLeft(leftHBox);
root.setCenter(centerPane);
RegionResizerFX.register(centerPane);
// Vbox which holds main menu, toggle buttons and main content
vbox.getChildren().addAll(getMenu(mainStage, root), hBox, (Node)
group.getSelectedToggle().getUserData());
// Set main stage size and color
Scene scene = new Scene(vbox, 1200, 650, Color.WHITESMOKE); // Set
main Stage color
// Application Close Confirmation Dialog
dialog = new DialogPanels();
dialog.initClosemainAppDialog(mainStage);
// Application Hot Keys Utilization
hotkey = new HotKey();
hotkey.initApplicationHotKeys(mainStage, scene);
mainStage.setScene(scene);
Rectangle2D primaryScreenBounds =
Screen.getPrimary().getVisualBounds();
// Set Stage boundaries to visible bounds of the main screen
mainStage.setX(primaryScreenBounds.getMinX());
mainStage.setY(primaryScreenBounds.getMinY());
mainStage.setWidth(primaryScreenBounds.getWidth()); // Maximum
width of the display
mainStage.setHeight(primaryScreenBounds.getHeight()); // Maximum
height of the display
//mainStage.show();
}
I tried to run the code on JVM 8b99 but I get error which I described here:
https://javafx-jira.kenai.com/browse/RT-31859
Is this JVM bug or I have a bug into my code?
More information about the openjfx-dev
mailing list