我正在尝试将JComboBox放在我的JFrame上,如果我点击显示组合的内容,但它没有显示在JFrame上。
我已经尝试过:.setVisible(true),. setEnabled(true)等。
这是我的代码:
public class tryCode {
private final JComboBox vehicleTypeBox = new JComboBox(new String[] {"HELLO WORLD", "OLA K ASE"});
private JFrame frame;
public tryCode() {
frame = new JFrame("");
frame.setSize(new Dimension(300, 300));
frame.setLayout(null);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
showComboBox();
}
public void showComboBox() {
vehicleTypeBox.setBounds(10,80,100,30);
vehicleTypeBox.setSelectedIndex(0);
frame.add(vehicleTypeBox);
}
}
欢迎任何解决方案!感谢
答案 0 :(得分:2)
您永远不会在任何地方致电showComboBox()
。如果它应该在启动时出现,你应该在构造函数中调用它。
public tryCode()
{
frame = new JFrame("");
frame.setSize(new Dimension(300, 300));
frame.setLayout(new FlowLayout()); // do not use null!
frame.setResizable(false);
frame.setLocationRelativeTo(null);
showComboBox();
frame.setVisible(true);
}
答案 1 :(得分:0)
我只是通过添加一个main方法测试你的代码。它工作。没有问题。
import java.awt.Dimension;
import javax.swing.JComboBox;
import javax.swing.JFrame;
public class TryCode {
private final JComboBox vehicleTypeBox = new JComboBox(new String[] {"HELLO WORLD", "OLA K ASE"});
private JFrame frame;
public TryCode() {
frame = new JFrame("");
frame.setSize(new Dimension(300, 300));
frame.setLayout(null);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
showComboBox();
}
public void showComboBox() {
vehicleTypeBox.setBounds(10,80,100,30);
vehicleTypeBox.setSelectedIndex(0);
frame.add(vehicleTypeBox);
}
/**
* @param args
*/
public static void main(String[] args) {
TryCode t=new TryCode();
}
}