Question: JavaFX Dice Simulator Not working well! Question: Dice Simulator Create a JavaFX application that simulates rolling a pair of dice. When the user clicks a
JavaFX
Dice Simulator
Not working well!
Question: Dice Simulator Create a JavaFX application that simulates rolling a pair of dice. When the user clicks a button, the application should generate two random numbers, each in the range of 1 through 6, to represent the value of the dice. Use ImageView controls to display the dice. (In the Student Sample Programs, you will find six images named Die1.png, Die2.png, Die. png, Die4.png, Die5.png, and Die6.png that you can use in the Imageview controls.)
* There are six dice image files. I couldn't attach all the files so attaching one of that.
What I did:
import javafx.application.Application; import javafx.stage.Stage; import javafx.scene.Scene; import javafx.scene.layout.HBox; import javafx.scene.layout.VBox; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import java.util.*; import java.util.Random; import static javafx.application.Application.launch; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.control.Button; import javafx.scene.control.Label;
public class DiceSimulator extends Application { private int d1, d2; private ImageView viewer1, viewer2; private Label label1, label2; private String one, two; private Image ie1, ie2, ie3, ie4, ie5, ie6;
public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { ie1 = new Image("file:Die1.bmp"); ie2 = new Image("file:Die2.bmp"); ie3 = new Image("file:Die3.bmp"); ie4 = new Image("file:Die4.bmp"); ie5 = new Image("file:Die5.bmp"); ie6 = new Image("file:Die6.bmp"); viewer1 = new ImageView(); viewer2 = new ImageView(); Button rollButton = new Button("Roll"); rollButton.setOnAction(event -> { d1 = (int)(Math.random()*6) +1; d2 = (int)(Math.random()*6) +1; one = Integer.toString(d1); two = Integer.toString(d2); label1.setText(one); label2.setText(two); if (one == "1" && two == "1") { viewer1 = new ImageView(ie1); viewer2 = new ImageView(ie1); } else if (one == "1" && two == "2") { viewer1 = new ImageView(ie1); viewer2 = new ImageView(ie2); } else if (one == "1" && two == "3") { viewer1 = new ImageView(ie1); viewer2 = new ImageView(ie3); } else if (one == "1" && two == "4") { viewer1 = new ImageView(ie1); viewer2 = new ImageView(ie4); } else if (one == "1" && two == "5") { viewer1 = new ImageView(ie1); viewer2 = new ImageView(ie5); } else if (one == "1" && two == "6") { viewer1 = new ImageView(ie1); viewer2 = new ImageView(ie6); } else if (one == "2" && two == "1") { viewer1 = new ImageView(ie2); viewer2 = new ImageView(ie1); } else if (one == "2" && two == "2") { viewer1 = new ImageView(ie2); viewer2 = new ImageView(ie2); } else if (one == "2" && two == "3") { viewer1 = new ImageView(ie2); viewer2 = new ImageView(ie3); } else if (one == "2" && two == "4") { viewer1 = new ImageView(ie2); viewer2 = new ImageView(ie4); } else if (one == "2" && two == "5") { viewer1 = new ImageView(ie2); viewer2 = new ImageView(ie5); } else if (one == "2" && two == "6") { viewer1 = new ImageView(ie2); viewer2 = new ImageView(ie6); } else if (one == "3" && two == "1") { viewer1 = new ImageView(ie3); viewer2 = new ImageView(ie1); } else if (one == "3" && two == "2") { viewer1 = new ImageView(ie3); viewer2 = new ImageView(ie2); } else if (one == "3" && two == "3") { viewer1 = new ImageView(ie3); viewer2 = new ImageView(ie3); } else if (one == "3" && two == "4") { viewer1 = new ImageView(ie3); viewer2 = new ImageView(ie4); } else if (one == "3" && two == "5") { viewer1 = new ImageView(ie3); viewer2 = new ImageView(ie5); } else if (one == "3" && two == "6") { viewer1 = new ImageView(ie3); viewer2 = new ImageView(ie6); } else if (one == "4" && two == "1") { viewer1 = new ImageView(ie4); viewer2 = new ImageView(ie1); } else if (one == "4" && two == "2") { viewer1 = new ImageView(ie4); viewer2 = new ImageView(ie2); } else if (one == "4" && two == "3") { viewer1 = new ImageView(ie4); viewer2 = new ImageView(ie3); } else if (one == "4" && two == "4") { viewer1 = new ImageView(ie4); viewer2 = new ImageView(ie4); } else if (one == "4" && two == "5") { viewer1 = new ImageView(ie4); viewer2 = new ImageView(ie5); } else if (one == "4" && two == "6") { viewer1 = new ImageView(ie4); viewer2 = new ImageView(ie6); } else if (one == "5" && two == "1") { viewer1 = new ImageView(ie5); viewer2 = new ImageView(ie1); } else if (one == "5" && two == "2") { viewer1 = new ImageView(ie5); viewer2 = new ImageView(ie2); } else if (one == "5" && two == "3") { viewer1 = new ImageView(ie5); viewer2 = new ImageView(ie3); } else if (one == "5" && two == "4") { viewer1 = new ImageView(ie5); viewer2 = new ImageView(ie4); } else if (one == "5" && two == "5") { viewer1 = new ImageView(ie5); viewer2 = new ImageView(ie5); } else if (one == "5" && two == "6") { viewer1 = new ImageView(ie5); viewer2 = new ImageView(ie6); } else if (one == "6" && two == "1") { viewer1 = new ImageView(ie6); viewer2 = new ImageView(ie1); } else if (one == "6" && two == "2") { viewer1 = new ImageView(ie6); viewer2 = new ImageView(ie2); } else if (one == "6" && two == "3") { viewer1 = new ImageView(ie6); viewer2 = new ImageView(ie3); } else if (one == "6" && two == "4") { viewer1 = new ImageView(ie6); viewer2 = new ImageView(ie4); } else if (one == "6" && two == "5") { viewer1 = new ImageView(ie6); viewer2 = new ImageView(ie5); } else if (one == "6" && two == "6") { viewer1 = new ImageView(ie6); viewer2 = new ImageView(ie6); } }); label1 = new Label(); label2 = new Label(); viewer1.setFitWidth(200); viewer1.setPreserveRatio(true); viewer2.setFitWidth(200); viewer2.setPreserveRatio(true); HBox hbox = new HBox(10, viewer1, viewer2); VBox vbox = new VBox(10, hbox, rollButton, label1, label2); vbox.setAlignment(Pos.CENTER);
Scene scene = new Scene(vbox); primaryStage.setScene(scene); primaryStage.setTitle("Dice Simulator"); primaryStage.show(); } }

Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
