我有一个曾经出现在JFrame中的JComboBox,现在它不...不确定为什么,但我认为它可能与JPanels和/或容器有关。我想有一个不同类型的服装在它的JComboBox。没有JComboBox的JFrame出现了,这很奇怪。下面是我的代码:
public void init() {
JComboBox dropDown = new JComboBox(description);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container cont = frame.getContentPane();
cont.setLayout(new FlowLayout());
cont.add(t);
cont.add(c);
final JPanel pan = new JPanel();
for (int i=0; i<6; i++){
c.addItem(description[count++]);
t.setEditable(false);
}//end of for
c.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt) {
if (count < description.length){
c.addItem(description[count++]);
}//end of if
selected = " "+((JComboBox) evt.getSource()).getSelectedItem();
}//end of method
};//end of listener
}//end of method发布于 2015-04-24 11:09:35
首先,您在循环后应用了";“。这是一个巨大的错误。我已经阅读了你的代码并做了一些修改。看看这个。此代码在屏幕上显示JComboBox。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class ans
{
JFrame frame=new JFrame();
String description[]={
"Hello","Bye","Java","Python","Fortran","Pascal"
};
int count=0;
JComboBox c=new JComboBox();
public void init() {
final JPanel pan = new JPanel();
pan.setLayout(new FlowLayout());
for (int i = 0; i < 6; i++)
c.addItem(description[count++]);
c.setEditable(false);
c.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt) {
//Do Something
}//end of if
// ... ? ...
}});
frame.setContentPane(c);
frame.setVisible(true);
frame.pack();
}
public static void main(String arg[])
{
ans a=new ans();
a.init();
}
}发布于 2015-04-24 11:04:46
我们不能看到代码的所有重要部分,但一个可能的问题是for循环之后的;。
for (int i = 0; i < 6; i++); c.addItem(description[count++]);
将仅添加计数为0的项。
https://stackoverflow.com/questions/29837745
复制相似问题