Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Close "x" and minimize "-" on SplitPane

acepsutFeb 18 2014 — edited Feb 18 2014

With this code I add a circle with an "x" to perform remove pane in a SplitPane, and add a circle with a "-" to perform a different divider position.

What I should get is one "x" and one "-", while now I have two "x" and two "-" overlap.

http://s30.postimg.org/sp7g8kaqp/Z896.png

What's wrong with this code?

class CustomTools extends Group { 

    public CustomTools() { 

        final Circle closeButton = CircleBuilder.create() 

                .centerX(5) 

                .centerY(0) 

                .radius(8) 

                .fill(Color.TRANSPARENT)

                .build(); 

        final Text closeText = new Text(1, 3, "x");

        closeText.setFont(Font.font("Comic Sans MS", 12));

        final Circle minimizeButton = CircleBuilder.create() 

                .centerX(5) 

                .centerY(0) 

                .radius(8) 

                .fill(Color.TRANSPARENT)

                .build();

        final Text minimizeText = new Text(1, 3, "-");

        minimizeText.setFont(Font.font("Comic Sans MS", 12));

        closeButton.setOnMouseEntered(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                closeButton.setFill(Color.RED);

                closeButton.setOpacity(0.50);

                closeText.setFill(Color.WHITE);

            }

        });

        closeButton.setOnMouseExited(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                closeButton.setFill(Color.TRANSPARENT);

                closeText.setFill(Color.BLACK);

            }

        });

        minimizeButton.setOnMouseEntered(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                minimizeButton.setFill(Color.RED);

                minimizeButton.setOpacity(0.50);

                minimizeText.setFill(Color.WHITE);

            }

        });

        minimizeButton.setOnMouseExited(new EventHandler<MouseEvent>(){

            @Override

            public void handle(MouseEvent me){

                minimizeButton.setFill(Color.TRANSPARENT);

                minimizeText.setFill(Color.BLACK);

            }

        });

        getChildren().addAll(minimizeButton, minimizeText, closeButton, closeText); 

    } 

}

    for (int i = 0; i < taToolsList.size(); i++) {

        ind = taToolsList.get(i);

        if (ind.getChart().chrt != null) {

            chrt = ind.getChart().chrt;

            final CustomPane testPane = new CustomPane();

            final SplitPane slp = chrt.getIntWindSplitPane();

            Label indicatorLabel = new Label("Indicator");

            indicatorLabel.setLayoutX(10);

            indicatorLabel.setLayoutY(8);

            indicatorLabel.setFont(Font.font("Verdana", 11));

            indicatorLabel.setTextFill(Color.BLACK);

            indicatorLabel.setOpacity(0.8);

            CustomTools ce = new CustomTools();

            ce.setOnMouseClicked(new EventHandler<MouseEvent>() {

                @Override

                public void handle(MouseEvent event) {

                    slp.getItems().remove(testPane);

                }

            });

            CustomTools cm = new CustomTools();

            cm.setOnMouseClicked(new EventHandler<MouseEvent>() {

                @Override

                public void handle(MouseEvent event) {

                    slp.setDividerPosition(0, 0.90);

                }

            });

            testPane.getChildren().addAll(ce, cm, indicatorLabel);

            ce.translateXProperty().bind(testPane.widthProperty().subtract(15));

            ce.setTranslateY(10);

            cm.translateXProperty().bind(testPane.widthProperty().subtract(30));

            cm.setTranslateY(10);

            slp.setDividerPosition(0, 0.70);

            slp.getItems().add(testPane);

        }

    }

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 18 2014
Added on Feb 18 2014
3 comments
265 views