java - Java 中的基本对话框

标签 java dialog switch-statement joptionpane

您好,我正在开展一个学校项目,但在用 Java 显示基本对话框时遇到问题。基本上我需要创建一个警报,说狮子的左爪有伤口。我发现 JOptionPane 工具可以工作,但它会在程序开始时弹出。现在,当我在 Netbeans 中运行它时,会弹出对话框,显示消息,然后结束代码。我需要在用户选择狮子选项后出现此对话框。任何建议将不胜感激!

 package monitoringsystem;
 import java.util.Scanner;
 import javax.swing.JOptionPane;

public class MonitoringSystem {

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    boolean mainmenu = true;
    while (mainmenu) {
        System.out.println("Select an option");
        System.out.println("Press 1 to Monitor Animals");
        System.out.println("Press 2 to Monitor Habitats");
        System.out.println("Press 3 to exit");
        int Number = input.nextInt();
        switch (Number) {
            case 1:
                System.out.println("Monitor Animals");
                System.out.println("Select an option");
                System.out.println("Press 1 for Details on Lions ");
                System.out.println("Press 2 for Details on Tigers");
                System.out.println("Press 3 for Details on Bears");
                System.out.println("Press 4 for Details on Giraffes");
                System.out.println("Press 5 to return to Main Menu");
                int animalNum = input.nextInt();
                switch (animalNum) {
                    case 1:
                        System.out.println("Animal - Lion");
                        System.out.println("Name: Leo");
                        System.out.println("Age: 5");
                        System.out.println("Feeding schedule: Twice daily\n");
                        JOptionPane.showInternalMessageDialog(null, "Health concerns: Cut on front left paw", "Alert",JOptionPane.WARNING_MESSAGE);
                        break;

最佳答案

这是使用 JavaFX 显示对话框窗口的非常简单的方法。您也许可以从中学到足够的知识,以便将其适应您的程序?

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class Main extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) {

        VBox root = new VBox(5);
        root.setPadding(new Insets(10));
        root.setAlignment(Pos.CENTER);

        Button btnClickMe = new Button("Click Me!");

        btnClickMe.setOnAction(event -> {
            Alert alert = new Alert(Alert.AlertType.WARNING);
            alert.setHeaderText("The lion has a cut on its paw!");
            alert.setContentText("Run away!!");

            alert.showAndWait();
        });

        root.getChildren().add(btnClickMe);
        primaryStage.setScene(new Scene(root));

        primaryStage.show();
    }
}

现在这对您来说可能有点高级,但它确实显示了一个对话框窗口!

关于java - Java 中的基本对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50938833/

相关文章:

java - 从 JNLP 运行应用程序时出现不需要的登录对话框

java - Android:自定义对话框的大小不准确

c# - 为什么需要在 switch 语句的最后一个标签之后放置 break?

sql - 在Where子句中添加Case语句

java - Java 中 if/else 与 switch 语句的相对性能差异是什么?

Java:通过不同的方法将元素添加到面板

java - 如何使用 Mockito 在 Spring Boot 中模拟被测类的实现方法

java递归: best collection of numbers

certificate - 如何以编程方式获取 X509 证书的完整证书链?

java - onCreateDialog 和动态对话框 (Android)