java-jface的ComboViewer遇到困难,需要帮助

我有Comboviewer对象,为此我添加了两个列表,分别是Type1和Type2.

但是在显示时它显示为:[Type1,Type2]
而不是:Type1然后在此以下
                                                类型2.

我希望默认情况下选择第一个.

需要帮忙.
谢谢

解决方法:

使用ArrayContentProvider并将ComboViewer输入设置为数组或列表以显示元素列表.在元素类型上定义toString()或使用setLabelProvider()提供LabelProvider对象来控制为组合中的每个项目显示的文本.

class Type
{
    private final String    m_name;

    Type(String name)
    {
        m_name = name;
    }

    public String toString()
    {
        return "Type " + m_name;
    }
}

Type type1 = new Type("1");
Type type2 = new Type("2");
ComboViewer comboViewer = new ComboViewer(combo);
comboViewer.setContentProvider(new ArrayContentProvider());
comboViewer.setInput(new Type[] {type1, type2};
comboViewer.setSelection(new StructuredSelection(type1));
上一篇:java-全局禁用SWT对话框中的输入/返回键


下一篇:Java SWT当组合框setEnabled()为false时更改文本颜色