Question: Need help! Im building this application where when I press the button it will list the button clicked in order. my problem is Im trying
Need help! Im building this application where when I press the button it will list the button clicked in order. my problem is Im trying to get it so it lists it in ascending order. SO if I click 2, 5, and 3 in that order it will list them in ascending order 2 -> 3 -> 5. Im almost there I just need to get this part. It also needs to be in JavaFX FXML
Here's my code:
FXMLDocumantController.java
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.control.Button; import javafx.scene.control.Label; import javafx.stage.Stage;
public class FXMLDocumentController implements Initializable { int i = 0; public String[] myArray = new String[5]; @FXML private Button resetButton; @FXML private Label label0; @FXML private Label label1; @FXML private Label label2; @FXML private Label label3; @FXML private Label label4; @FXML private Button button1; @FXML private Button button2; @FXML private Button button3; @FXML private Button button4; @FXML private Button button5; @FXML private Button closeButton; private void printList() { if (i == 0) { label0.setText(myArray[0]); } if (i == 1) { label1.setText("-> " + myArray[1]); } if (i == 2) { label2.setText("-> " + myArray[2]); } if (i == 3) { label3.setText("-> " + myArray[3]); } if (i == 4) { label4.setText("-> " + myArray[4]); } } @FXML private void handleCloseButton() { Stage stage = (Stage) closeButton.getScene().getWindow(); stage.close(); } @FXML private void handleButton1(ActionEvent event) { myArray[i] = button1.getText(); printList(); button1.setDisable(true); i++; } @FXML private void handleButton2(ActionEvent event) { myArray[i] = button2.getText(); printList(); button2.setDisable(true); i++; } @FXML private void handleButton3(ActionEvent event) { myArray[i] = button3.getText(); printList(); button3.setDisable(true); i++; } @FXML private void handleButton4(ActionEvent event) { myArray[i] = button4.getText(); printList(); button4.setDisable(true); i++; } @FXML private void handleButton5(ActionEvent event) { myArray[i] = button5.getText(); printList(); button5.setDisable(true);
i++; } @FXML private void handleResetButton(ActionEvent event) { button1.setDisable(false); button2.setDisable(false); button3.setDisable(false); button4.setDisable(false); button5.setDisable(false); label0.setText(""); label1.setText(""); label2.setText(""); label3.setText(""); label4.setText(""); i = 0; } @Override public void initialize(URL url, ResourceBundle rb) { // TODO } }
FXMLDocument.fxml
Eight.java (Main)
import javafx.application.Application; import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage;
public class Eight extends Application { @Override public void start(Stage stage) throws Exception { Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml")); Scene scene = new Scene(root); stage.setScene(scene); stage.show(); }
/** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
