如果语句基于从下拉列表中选择

时间:2017-04-16 20:41:27

标签: java swing joptionpane dropdown

我已经阅读了所有其他文章,但我找不到答案。

我从带有对象选项的JOptionPane开始。当用户选择动物或栖息地时,将出现另一个下拉选项。现在我正在努力获取另一个弹出窗口,当选择狮子会时打开信息。但我无法让它发挥作用。

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

我现在要做的是输入从下拉列表中选择的if语句,但我认为它没有正常工作。当我运行代码并选择动物并选择Tigers时,会弹出狮子会的窗口,当我说好的时候会弹出Tigers框。我还需要弄清楚如何在下拉列表的某些选项中输入警告声明。对于每种动物的健康问题。我想添加一个按钮以获取更多信息,但我希望能够自动弹出它。我还在阅读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");

1 个答案:

答案 0 :(得分:1)

if(choice=="Lions")

不要使用“==”进行对象比较。

而是使用String.equals(...)方法。

  

我从带有对象选项

的JOptionPane开始

声音合理。您可以创建一个String of Array选项并使用showOptionPane(...)方法。

  

现在我正在努力获取另一个弹出窗口,当选择狮子会时打开信息

那么为什么这次使用showInputDialog(...)

如果showOptionPane(...)之前有效,为什么要更改方法?

JFrame animal = new JFrame("Animals");  
JFrame habitat = new JFrame("Habitats");

这些陈述有什么意义?

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

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