hola mijaya...
para resolver tu problema tienes que utilizar la Clase KeySelectionManager.
este codigo que hice, te puede ayudar
Código java:
Ver original private static final long serialVersionUID = 1L;
public DmComboBox() {
setKeySelectionManager(new MyKeySelectionManager());
this.setLocation(100, 100);
}
long lastKeyTime = 0;
int selIx = 01;
Object sel
= model.
getSelectedItem(); if (sel != null) {
for (int i = 0; i < model.getSize(); i++) {
if (sel.equals(model.getElementAt(i))) {
selIx = i;
break;
}
}
}
long curTime
= System.
currentTimeMillis();
if (curTime - lastKeyTime < 300) {
pattern += ("" + aKey).toLowerCase();
} else {
pattern = ("" + aKey).toLowerCase();
}
lastKeyTime = curTime;
for (int i = selIx + 1; i < model.getSize(); i++) {
String s
= model.
getElementAt(i
).
toString().
toLowerCase(); if (s.startsWith(pattern)) {
return i;
}
}
for (int i = 0; i < selIx; i++) {
if (model.getElementAt(i) != null) {
String s
= model.
getElementAt(i
).
toString().
toLowerCase(); if (s.startsWith(pattern)) {
return i;
}
}
}
return -1;
}
}
public static void main
(String[] args
) { DmComboBox dm = new DmComboBox();
dm.addItem("Beatriz");
dm.addItem("Ana");
dm.addItem("Vanessa");
dm.addItem("Janeth");
dm.addItem("Yola");
dm.addItem("Silvia");
dm.addItem("Jhovana");
dm.addItem("Lizet");
fr.
setDefaultCloseOperation(JFrame.
EXIT_ON_CLOSE); fr.setSize(300, 60);
fr.setVisible(true);
}
}
espero haberte ayudado, saludos