我正在使用Swing并将JComboBox添加到JPanel。通常,当您单击JComboBox时,它会垂直枚举可能的选项(类似于任何网站上的组合框)。
但是,我想让ComboBox水平扩展 - 有没有办法在不编写自定义渲染器的情况下执行此操作?
垂直扩张
[ ComboBox ]
- Option
- Option
- Option
横向扩展
[ ComboBox ] -- [ Option | Option | Option | Option ]
答案 0 :(得分:1)
我很确定你问题的答案是“不”。您将不得不构建至少部分渲染器来为您执行此操作。但这是一个开始:
//Override the createPopup method - everything else can stay the same
public static CustomRenderer extends MetalComboBoxUI{
@Override
protected ComboPopup createPopup() {
// Do something different here
ComboPopup result = super.createPopup();
return result;
}
}
您需要使用box.setUI(new CustomRenderer());