用 Java 创建弹出窗口
Java 允许我们使用 AWT、Swing 和 JavaFX 等库创建多种类型的 GUI 组件。在本文中,我们将查看对话框并学习如何创建它。在以下示例中,我们将使用两个类,JOptionPane
和 JDialog
。
在 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?");
}
}
输出:
示例 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);
}
}
输出:
示例 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 中使用 JDialog
创建弹出窗口
在第二种方法中,我们使用 Jdialog
类。要创建框架,我们需要一个 jFrame
对象,当我们创建 JDialog
和 jd
对象时,该对象作为参数传递给 JDialog()
的构造函数。现在我们需要设置对话框的布局,指定如何在对话框内放置组件。我们设置了 FlowLayout()
函数,该函数使用 jd.setLayout()
将组件排列成一行。
要设置弹出窗口的位置和大小,我们使用 setBounds()
函数,其中前两个参数是 x 和 y 位置,后两个参数是宽度和高度。
我们创建了一个 jLabel
变量,其中包含在构造函数中传递的文本消息以显示文本。为了让用户能够关闭对话框,我们创建了一个带有文本 Close
的 JButton
对象。现在,我们必须设置单击关闭按钮时要执行的操作。为此,我们调用了 addActionListener()
函数,该函数覆盖了我们指定要执行的操作的 actionPerformed()
方法。
最后,我们添加使用 jd.add()
创建的所有组件或对象。
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
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 中延迟几秒钟的时间
发布时间:2023/12/17 浏览次数:217 分类:Java
-
本篇文章主要介绍如何在 Java 中制造程序延迟。本教程介绍了如何在 Java 中制造程序延时,并列举了一些示例代码来了解它。
如何在 Java 中把 Hashmap 转换为 JSON 对象
发布时间:2023/12/17 浏览次数:187 分类:Java
-
它描述了允许我们将哈希图转换为简单的 JSON 对象的方法。本文介绍了在 Java 中把 Hashmap 转换为 JSON 对象的方法。我们将看到关于创建一个 hashmap,然后将其转换为 JSON 对象的详细例子。
如何在 Java 中按值排序 Map
发布时间:2023/12/17 浏览次数:171 分类:Java
-
本文介绍了如何在 Java 中按值对 Map 进行排序。本教程介绍了如何在 Java 中按值对 Map
进行排序,并列出了一些示例代码来理解它。
如何在 Java 中打印 HashMap
发布时间:2023/12/17 浏览次数:192 分类:Java
-
本帖介绍了如何在 Java 中打印 HashMap。本教程介绍了如何在 Java 中打印 HashMap 元素,还列举了一些示例代码来理解这个主题。
在 Java 中更新 Hashmap 的值
发布时间:2023/12/17 浏览次数:146 分类:Java
-
本文介绍了如何在 Java 中更新 HashMap 中的一个值。本文介绍了如何在 Java 中使用 HashMap 类中包含的两个方法-put() 和 replace() 更新 HashMap 中的值。
Java 中的 hashmap 和 map 之间的区别
发布时间:2023/12/17 浏览次数:79 分类:Java
-
本文介绍了 Java 中的 hashmap 和 map 接口之间的区别。本教程介绍了 Java 中 Map 和 HashMap 之间的主要区别。在 Java 中,Map 是用于以键值对存储数据的接口,
在 Java 中获取用户主目录
发布时间:2023/12/17 浏览次数:218 分类:Java
-
这篇文章向你展示了如何在 Java 中获取用户主目录。本教程介绍了如何在 Java 中获取用户主目录,并列出了一些示例代码以指导你完成该主题。
Java 中 size 和 length 的区别
发布时间:2023/12/17 浏览次数:179 分类:Java
-
这篇文章教你如何知道 Java 中大小和长度之间的区别。本教程介绍了 Java 中大小和长度之间的区别。我们还列出了一些示例代码以帮助你理解该主题。
Java 中的互斥锁
发布时间:2023/12/17 浏览次数:111 分类:Java
-
了解有关 Java 中互斥锁的一切,在计算机科学领域,互斥或互斥被称为并发控制的属性。每台计算机都使用称为线程的最小程序指令序列。有一次,计算机在一个线程上工作。为了更好地理解,