Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 基于从下拉列表中选择的If语句_Java_Swing_Joptionpane_Dropdown - Fatal编程技术网

Java 基于从下拉列表中选择的If语句

Java 基于从下拉列表中选择的If语句,java,swing,joptionpane,dropdown,Java,Swing,Joptionpane,Dropdown,我已经通读了所有其他的文章,我没有找到我的答案 我从一个带有对象选项的JOptionPane开始。当用户选择动物或栖息地时,将出现另一个下拉列表,其中包含所选内容。现在,我正在努力获得另一个弹出窗口,当狮子被选中时,它会打开信息。但我不能让它工作 我还查看了其他人的输入,以便能够显示这些下拉列表。但他们使用的是JFrame,所以在NetBeans之外,java的另一个窗口打开了 我现在要做的是为下拉列表中的选择输入if语句,但我认为它不能正常工作。当我运行代码并选择动物和老虎时,会弹出狮子窗口,

我已经通读了所有其他的文章,我没有找到我的答案

我从一个带有对象选项的JOptionPane开始。当用户选择动物或栖息地时,将出现另一个下拉列表,其中包含所选内容。现在,我正在努力获得另一个弹出窗口,当狮子被选中时,它会打开信息。但我不能让它工作

我还查看了其他人的输入,以便能够显示这些下拉列表。但他们使用的是JFrame,所以在NetBeans之外,java的另一个窗口打开了

我现在要做的是为下拉列表中的选择输入if语句,但我认为它不能正常工作。当我运行代码并选择动物和老虎时,会弹出狮子窗口,当我说“好”时,会弹出老虎框。我还需要弄清楚如何在下拉列表中的一些选项中输入警告语句。每只动物的健康问题。我想添加一个按钮来获取更多信息,但我希望它能够自动弹出。我仍在阅读API文档,但我只需要一个简单的消息对话框来显示信息

   public class MonitoringSystem {

   public static void main(String[] args){




ImageIcon icon = new ImageIcon(img.class.getResource("zoo.png"));
    String[] options = {"Animals", "Habitat", "Exit"};
    int x = JOptionPane.showOptionDialog(null, "Zookeepers would you like     to view animal activities or monitor habitats?",
            "Welcome to the Brooklyn Zoo!",     JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, icon, options,     options[0]);
System.out.println(x);  


JFrame animal = new JFrame("Animals");  


JFrame habitat = new JFrame("Habitats"); 

if(x==0){  
animal.setVisible(true); 
String[] choices = {"Lions","Tigers","Bears","Giraffes",};
String input = (String) JOptionPane.showInputDialog(null,"Select Animal:","Zoo     Animals",
JOptionPane.QUESTION_MESSAGE,null,choices,choices[1]);




if ("Lions".equals(choices));
JOptionPane.showMessageDialog(null, "Animal: Lion\nName: Leo\nAge: 5    \nFeeding Schedule: Twice daily");
{

}
if("Tigers".equals(choices));
JOptionPane.showMessageDialog(null, "Animal: Tiger\nName: Maj\nAge: 15    \nFeeding Schedule: 3x daily");
不要将==用于对象比较

而是使用字符串。等于。。。方法

我从一个带有对象选项的JOptionPane开始

听起来很合理。创建字符串选项数组并使用showOptionPane。。。方法

现在,我正在努力获得另一个弹出窗口的信息打开时,狮子被选中

那么为什么要使用showInputDialog。。。这次呢

如果显示选项窗格。。。以前工作过为什么要改变方法

JFrame animal = new JFrame("Animals");  
JFrame habitat = new JFrame("Habitats");
这些说法的意义是什么

阅读上Swing教程中的部分,了解更多使用JOptionPane的示例


如果你只是想显示狮子的信息。然后将文本添加到JTextArea,然后在JOptionPane中显示JTextArea。您可以将任何Swing组件添加到JOptionPane。阅读JOptionPane API。

您正在考虑\n添加换行符,而不是/n。另外,您不能使用==,请使用Stringequals来比较字符串。我尝试使用if String.equalsLions,但出现了一个错误。String是一个类,equals方法不是静态方法。在您的情况下,这意味着您应该在我键入if Lions.equals.choice时执行Lions.equals.choice;它给了我一个未闭合的字符串文字。不应该有一个。等于之后。当我移除JFrame animal=new JFrameAnimals时;JFrame栖息地=新JFrame栖息地;当我从框中选择动物或栖息地或取消时,它不会起任何作用。我明白了这一点。谢谢你的帮助!
JFrame animal = new JFrame("Animals");  
JFrame habitat = new JFrame("Habitats");