2015-10-15 118 views
2

我正在Java中制作一个基本的计算器应用程序,它有2个JTextFields和1个JComboBox。我想知道是否有一种方法可以让一个JButton检测到您在JComboBox中选择的内容是什么,当我与文本字段没有它,它看起来是这样的如何知道你在JComboBox中选择了什么

static String divide = "/"; 

if (n == JOptionPane.OK_OPTION) { 
       if (symbol.getText().equals(divide)){ 
       <code> 
       } 
     } 

那么,有没有类似的方式做这与JComboBoxs?

String[] symbols = {times, minus, plus, divide}; 

这就是JComboBox的内容代码。

+0

看: http://stackoverflow.com/questions/15173325/execute-an-行动 - 当一个项目的组合框被选中 它会帮助你理解它。 –

+0

查看[如何使用组合框](http://docs.oracle.com/javase/tutorial/uiswing/components/combobox.html)和[如何编写动作监听器](http:// docs .oracle.com/JavaSE的/教程/ uiswing /事件/ actionlistener.html) – MadProgrammer

回答

3

您可以使用方法.getSelectedItem()从JComboBox中获取所选项目。假设你有String [] symbols = {times,minus,plus,divide};作为构建的JComboBox当输入(见构造JComboBox(E[] items)

JComboBox jcb = new JComboBox(symbols); 

//you will see the string you selected 
System.out.println(jcb.getSelectedItem()); 
1

也许用行动听众在这个问题

String[] quantities1 = {"/","+"}; 
JComboBox comboBox = new JComboBox(quantities1); 
     comboBox.addActionListener(
       new ActionListener(){ 
        public void actionPerformed(ActionEvent e){ 
         //do stuff when a section is performed 
         //you can use comboBox.getSelectedItem() to get the selected value 
        } 
       }    
     ); 
相关问题