【发布时间】:2012-01-31 00:38:06
【问题描述】:
我想要一个像 Google Search 这样的下拉组合框(即,当我们输入一个字母时,会显示以该字母开头的元素)。当下拉列表出现时,我们可以选择一个单词作为我们的文本框值。
我可以在 SWT 中执行此操作吗?
comboLabel.addKeyListener(new KeyListener()
{
@Override
public void keyReleased(KeyEvent e)
{
ArrayList<String> listElements = new ArrayList<String>();
// on pressing down arrow list gets expanded i.e list drops down
if(e.keyCode == 16777218)
{
comboLabel.setListVisible(true);
}
// if key pressed is only a number of charecter or space.
else if ((e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 97 && e.keyCode <= 122) || e.keyCode == 32)
{
// for removing all previously assigned labels
comboLabel.remove(0,comboLabel.getItemCount()-1);
listElements = labels.getLabels(comboLabel.getText());
}
for (int i=0; i<listElements.size();i++)
{
comboLabel.add(listElements.get(i),i);
}
}
});
【问题讨论】:
标签: java autocomplete combobox swt