本文是自己學習所做筆記,歡迎轉載,但請注明出處:http://blog.csdn.net/jesson20121020
與一組單選button的功能類似,組合框(下拉列表)也是強制用戶從一組可能的元素中僅僅選擇一個,只是,這樣的方法更加緊湊,並且在不會使用戶感到迷惑的前提下,改變下拉列表中內容更加easy。
以下的樣例,JComboBox組合框開始時已經有了一些元素,然后當一個button按下的時候,將向組合框中增加新的元素。
public class ComboBoxes extends JFrame {
private String[] weekDays = {
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat",
"Sun"
};
private JTextField t = new JTextField(15);
private JComboBox c = new JComboBox();
private JButton b = new JButton("Add items");
private int count = 0;
public ComboBoxes() {
// TODO Auto-generated constructor stub
setLayout(new FlowLayout());
setSize(200,175);
setVisible(true);
for(int i = 0; i < 3;i++)
c.addItem(weekDays[count++]);
t.setEditable(false);
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(count < weekDays.length){
c.addItem(weekDays[count++]);
}
}
});
c.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
t.setText("您選擇了 "+ c.getSelectedItem());
}
});
c.setEditable(true);
add(t);
add(c);
add(b);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new ComboBoxes();
}
}
效果例如以下:

當點擊組合框中的選項時,會將選擇的結果顯示在JTextField中。
