如何在 If 语句中使用 JOptionPane?
How do I use JOptionPane in an If statement?
我是新手Java。在作业中,我正在使用 If/Else 语句并尝试在 JOptionPane 中显示信息。这是我为说明我遇到的问题而制作的一个简单示例。如果字符串 hello 中的输入等于 "hey".
,我想显示 "Hello there"
什么都没有。
我注意到如果我把 JOptionPane 语句放在代码的前面,比如放在扫描仪声明旁边,它就会起作用。另外,如果我这样做并将另一个 JOptionPane 留在原来的位置,将会有两个对话框。
我在想,也许扫描仪输入有问题。
import javax.swing.JOptionPane;
import java.util.Scanner;
public class HW2 {
public static void main( String args[] ) {
Scanner kb = new Scanner(System.in);
System.out.print("Say hey");
String hello = kb.nextLine();
if (hello.equals("hey"))
JOptionPane.showMessageDialog(null, "Hello there!");
kb.close();
}
}
有谁知道为什么不显示对话框?谢谢!
我相信你在这里真的没有任何问题,只是你的 JOptionPane 隐藏在你的 IDE window 后面或者在后面的某个地方。为了总是把它放在前面,尝试使用这样的东西:
if (hello.equals("hey")) {
JOptionPane pane = new JOptionPane();
JDialog dialog = pane.createDialog("My Test");
pane.setMessage("Hello There");
dialog.setAlwaysOnTop(true);
dialog.setVisible(true);
}
这会让您更灵活地选择要在何处显示它。另一种方式更短一些,但想法相同:
if (hello.equals("hey")) {
JDialog dialog = new JDialog();
dialog.setAlwaysOnTop(true);
JOptionPane.showMessageDialog(dialog, "Hello There");
}
供您试用的完整代码:
import javax.swing.*;
import java.util.Scanner;
public class HW2 {
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
System.out.println("Say hey");
String hello = kb.nextLine(); //use kb.nextLine().trim() if you dont want whitespaces
if (hello.equals("hey")) {
JDialog dialog = new JDialog();
dialog.setAlwaysOnTop(true);
JOptionPane.showMessageDialog(dialog, "Hello There");
}
}
}
我是新手Java。在作业中,我正在使用 If/Else 语句并尝试在 JOptionPane 中显示信息。这是我为说明我遇到的问题而制作的一个简单示例。如果字符串 hello 中的输入等于 "hey".
,我想显示 "Hello there"什么都没有。
我注意到如果我把 JOptionPane 语句放在代码的前面,比如放在扫描仪声明旁边,它就会起作用。另外,如果我这样做并将另一个 JOptionPane 留在原来的位置,将会有两个对话框。
我在想,也许扫描仪输入有问题。
import javax.swing.JOptionPane;
import java.util.Scanner;
public class HW2 {
public static void main( String args[] ) {
Scanner kb = new Scanner(System.in);
System.out.print("Say hey");
String hello = kb.nextLine();
if (hello.equals("hey"))
JOptionPane.showMessageDialog(null, "Hello there!");
kb.close();
}
}
有谁知道为什么不显示对话框?谢谢!
我相信你在这里真的没有任何问题,只是你的 JOptionPane 隐藏在你的 IDE window 后面或者在后面的某个地方。为了总是把它放在前面,尝试使用这样的东西:
if (hello.equals("hey")) {
JOptionPane pane = new JOptionPane();
JDialog dialog = pane.createDialog("My Test");
pane.setMessage("Hello There");
dialog.setAlwaysOnTop(true);
dialog.setVisible(true);
}
这会让您更灵活地选择要在何处显示它。另一种方式更短一些,但想法相同:
if (hello.equals("hey")) {
JDialog dialog = new JDialog();
dialog.setAlwaysOnTop(true);
JOptionPane.showMessageDialog(dialog, "Hello There");
}
供您试用的完整代码:
import javax.swing.*;
import java.util.Scanner;
public class HW2 {
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
System.out.println("Say hey");
String hello = kb.nextLine(); //use kb.nextLine().trim() if you dont want whitespaces
if (hello.equals("hey")) {
JDialog dialog = new JDialog();
dialog.setAlwaysOnTop(true);
JOptionPane.showMessageDialog(dialog, "Hello There");
}
}
}