javafx - How to add child node without affecting layout of GridPane parent -


i want create app using javafx. looks this:

i want add zoom function chart. when click button "zoom in", app become fig2. however, have no idea achieve it. when change size of pane included chart, change grid pane size, looks this:

this

you not want zoom considered gridpane layout. in can achieved applying transforms child of gridpane want modify.

the following example demonstrates how zoom node while mouse hovering on it:

private static region createregion(string background) {     region region = new region();     region.setstyle("-fx-background-color:"+background);     region.setprefsize(300, 100);     return region; }  @override public void start(stage primarystage) {     gridpane gp = new gridpane();      // create background     gp.add(createregion("green"), 0, 0);     gp.add(createregion("dodgerblue"), 0, 1);      // create region zoomed     region zoomregion = createregion("red");     gridpane.setfillwidth(zoomregion, boolean.false);     gridpane.setfillheight(zoomregion, boolean.false);     zoomregion.setprefwidth(100);     scale scale = new scale();     zoomregion.gettransforms().add(scale);      // keep pivot @ bottom left corner     scale.pivotyproperty().bind(zoomregion.heightproperty());      zoomregion.hoverproperty().addlistener((observable, oldvalue, newvalue) -> {         // adjust scale when hover state changed         double scalefactor = newvalue ? 1.5 : 1;         scale.setx(scalefactor);         scale.sety(scalefactor);     });      gp.add(zoomregion, 0, 1);      scene scene = new scene(gp);      primarystage.setscene(scene);     primarystage.show(); } 

Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -