30

I have this code snippet:

Alert alert = new Alert(AlertType.WARNING, "The format for dates is year.month.day. " + "For example, today is " + todayToString() + ".", ButtonType.OK, ButtonType.CANCEL); alert.setTitle("Date format warning"); Optional<ButtonType> result = alert.showAndWait(); if (result.get() == ButtonType.OK) { formatGotIt = true; } 

Above, I request two buttons titled "Yes" and "No." However, I wish to change them both.

2 Answers 2

55

You can define your own button types. In this example the buttons' text is foo and bar:

ButtonType foo = new ButtonType("foo", ButtonBar.ButtonData.OK_DONE); ButtonType bar = new ButtonType("bar", ButtonBar.ButtonData.CANCEL_CLOSE); Alert alert = new Alert(AlertType.WARNING, "The format for dates is year.month.day. " + "For example, today is " + todayToString() + ".", foo, bar); alert.setTitle("Date format warning"); Optional<ButtonType> result = alert.showAndWait(); if (result.orElse(bar) == foo) { formatGotIt = true; } 
Sign up to request clarification or add additional context in comments.

Comments

21
((Button) dialog.getDialogPane().lookupButton(ButtonType.OK)).setText("Not OK Anymore"); ((Button) dialog.getDialogPane().lookupButton(ButtonType.CANCEL)).setText("Not Cancel Anymore"); 

2 Comments

Actually, I find this might be useful to someone. Especially in case of JavaFx dialog like Alert. Example: Alert errorAlert = new Alert(Alert.AlertType.ERROR);
its Very Relevant, solved my issue. Just remember that 'dialog' might also be a "Alert" object.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.