用 Java 创建弹出窗口

Rupam Yadav 2023年10月12日
  1. 在 Java 中使用 JOptionPane 创建弹出窗口
  2. 在 Java 中使用 JDialog 创建弹出窗口
用 Java 创建弹出窗口

Java 允许我们使用 AWT、Swing 和 JavaFX 等库创建多种类型的 GUI 组件。在本教程中,我们将查看对话框并学习如何创建它。在以下示例中,我们将使用两个类,JOptionPaneJDialog

在 Java 中使用 JOptionPane 创建弹出窗口

创建 Java 弹出窗口或对话框的最简单方法是使用 JOptionPane 类作为 javax.swing 包的一部分,它带有许多有用的方法。下面列出了一些常用的技术:

方法 描述
显示消息对话框() 在指定的框架内显示消息
显示输入对话框() 在弹出窗口中获取用户的输入
显示确认对话框() 显示消息并要求用户进行确认,例如是、否或取消

以下是这些方法的示例:

示例 1:通过创建 Jframe 对象,在 JFrame 中显示消息,调用 JOptionPane.showMessageDialog() 方法,并将第一个 jFrame 对象作为其第一个参数传递。第二个参数是我们想要在对话框中显示的消息。

import javax.swing.*;

public class PopUpJava {
  public static void main(String[] args) {
    JFrame jFrame = new JFrame();
    JOptionPane.showMessageDialog(jFrame, "Hello there! How are you today?");
  }
}

输出:

java 弹出窗口 1

示例 2:此示例使用 JOptionPane.showInputDialog() 函数显示带有输入字段的消息以获取输入。在这里,为了存储输入,我们使用 String 变量,然后使用 showMessageDialog() 将其显示给用户。

import javax.swing.*;

public class PopUpJava {
  public static void main(String[] args) {
    JFrame jFrame = new JFrame();
    String getMessage = JOptionPane.showInputDialog(jFrame, "Enter your message");

    JOptionPane.showMessageDialog(jFrame, "Your message: " + getMessage);
  }
}

输出:

java 弹出窗口 2

java 弹出窗口 3

示例 3:我们使用 JOptionPane.showConfirmDialog() 函数来显示一个带有三个按钮的对话框:是、否和取消。就像其他方法一样,我们传递一个 jFrame 对象和一个要显示的消息。showConfirmDialog() 方法返回一个 int,指定被单击的按钮:0 表示是,1 表示否,任何其他整数指定取消按钮被单击。

import javax.swing.*;

public class PopUpJava {
  public static void main(String[] args) {
    JFrame jFrame = new JFrame();
    int result = JOptionPane.showConfirmDialog(jFrame, "Press any button to close the dialog.");

    if (result == 0)
      System.out.println("You pressed Yes");
    else if (result == 1)
      System.out.println("You pressed NO");
    else
      System.out.println("You pressed Cancel");
  }
}

输出:

java 弹出窗口 4

在 Java 中使用 JDialog 创建弹出窗口

在第二种方法中,我们使用 Jdialog 类。要创建框架,我们需要一个 jFrame 对象,当我们创建 JDialogjd 对象时,该对象作为参数传递给 JDialog() 的构造函数。现在我们需要设置对话框的布局,指定如何在对话框内放置组件。我们设置了 FlowLayout() 函数,该函数使用 jd.setLayout() 将组件排列成一行。

要设置弹出窗口的位置和大小,我们使用 setBounds() 函数,其中前两个参数是 x 和 y 位置,后两个参数是宽度和高度。

我们创建了一个 jLabel 变量,其中包含在构造函数中传递的文本消息以显示文本。为了让用户能够关闭对话框,我们创建了一个带有文本 CloseJButton 对象。现在,我们必须设置单击关闭按钮时要执行的操作。为此,我们调用了 addActionListener() 函数,该函数覆盖了我们指定要执行的操作的 actionPerformed() 方法。

最后,我们添加使用 jd.add() 创建的所有组件或对象。

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class PopUpJava {
  public static void main(String[] args) {
    JFrame jFrame = new JFrame();

    JDialog jd = new JDialog(jFrame);

    jd.setLayout(new FlowLayout());

    jd.setBounds(500, 300, 400, 300);

    JLabel jLabel = new JLabel("Press close button to close the dialog.");

    JButton jButton = new JButton("Close");
    jButton.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        jd.setVisible(false);
      }
    });

    jd.add(jLabel);
    jd.add(jButton);
    jd.setVisible(true);
  }
}

输出:

java 弹出窗口 5

作者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

相关文章 - Java GUI

相关文章 - Java Swing