如何在SWT Combo中显示文本和图标?

时间:2016-04-27 19:17:55

标签: java combobox swt

我想将文字和图片添加到Combo小部件的项目中?这有可能还是有替代方案?

1 个答案:

答案 0 :(得分:0)

使用SWT Combo窗口小部件无法做到这一点。

但是,Nebula有一个名为TableCombo的小部件,可以以类似组合的形式显示图标和文本。

以下是一个例子:

public static void main(String[] args)
{
    final Display display = new Display();
    final Shell shell = new Shell(display);
    shell.setText("Stackoverflow");
    shell.setLayout(new FillLayout());

    TableCombo tc = new TableCombo(shell, SWT.BORDER | SWT.READ_ONLY);

    Image image = display.getSystemImage(SWT.ICON_ERROR);

    for (int i = 0; i < 10; i++)
    {
        TableItem ti = new TableItem(tc.getTable(), SWT.NONE);
        ti.setText("Item " + i);
        ti.setImage(image);
    }

    shell.pack();
    shell.open();

    shell.setCursor(display.getSystemCursor(SWT.CURSOR_IBEAM));

    while (!shell.isDisposed())
    {
        if (!display.readAndDispatch())
            display.sleep();
    }
    display.dispose();
}

enter image description here