java - 如何为 SWT Combo 中的各个项目设置不同的颜色

标签 java drop-down-menu combobox swt

我在 SWT 中有一个组合下拉菜单,并且一直在考虑根据某些条件为列表中的不同项目设置不同的颜色。我稍后再决定(即,如果字符串超过 5 个字符,则该项目应具有红色背景,否则应为绿色)

我设法更改了整个 Combo 小部件的背景,但发现没有方法可以更改其各个项目的背景。

Color colorGreenSWT = new Color(null, 0, 255, 0);
Combo combo = new Combo(comp, SWT.DROP_DOWN);
String[] languages = { "i", "it", "item", "items", "more_items" };
for (int i = 0; i < languages.length; i++)
    combo.add(languages[i]);
combo.setBackground(colorGreenSWT);

那么有什么方法可以为part中的每个item选择背景色吗?

最佳答案

Combo 不允许这样做。 Nebula 项目有一个您可能感兴趣的 TableCombo 小部件 [1]。此外,SWT 有一个扩展的自定义组合,称为 CCombo,您可能想看看 [2]。

[1] https://eclipse.org/nebula/widgets/tablecombo/tablecombo.php

[2] http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fswt%2Fcustom%2FCCombo.html

关于java - 如何为 SWT Combo 中的各个项目设置不同的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35652170/

相关文章:

html - 纯 CSS 菜单打开时防止正文滚动,并允许菜单在超出设备高度时滚动

javascript - 在登录页面从数据库检索选择框的值

c - win32/C对话框: "modern" look/style for a combo box

java - Cassandra 自定义类型映射器

java - 客户端服务器android上的数据库

javascript - 数组元素不会显示在 JavaScript 的选择框中

.net - WPF ComboBox 的自定义相等比较器

c# - 使用带有 List<KeyValuePair<UserEnum,String>> 作为数据源的 Windows 窗体组合框 - C#

Java asm编译器

java - JTable定位